From ee3476c3eb4b21bcb60fd30c8838d42b92d8a783 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Peter=20Tak=C3=A1cs?= <93127072+PeterTakacs300@users.noreply.github.com> Date: Wed, 7 Sep 2022 11:00:18 +0200 Subject: [PATCH] IDEMPIERE-5409 - Dashboard Content - Maximizable checkbox (#1467) * IDEMPIERE-5409 - Dashboard Content - Maximizable checkbox * IDEMPIERE-5409 - IsMaximizable default 'Y' * IDEMPIERE-5393 - fixes * IDEMPIERE-5409 - fixed script name --- .../oracle/202209061547_IDEMPIERE-5409.sql | 62 +++++++++++++++++++ .../202209061547_IDEMPIERE-5409.sql | 59 ++++++++++++++++++ .../compiere/model/I_PA_DashboardContent.java | 11 +++- .../compiere/model/X_PA_DashboardContent.java | 28 ++++++++- .../webui/desktop/DashboardController.java | 2 +- .../theme/default/css/fragment/gadget.css.dsp | 4 +- 6 files changed, 161 insertions(+), 5 deletions(-) create mode 100644 migration/iD10/oracle/202209061547_IDEMPIERE-5409.sql create mode 100644 migration/iD10/postgresql/202209061547_IDEMPIERE-5409.sql diff --git a/migration/iD10/oracle/202209061547_IDEMPIERE-5409.sql b/migration/iD10/oracle/202209061547_IDEMPIERE-5409.sql new file mode 100644 index 0000000000..25869fa570 --- /dev/null +++ b/migration/iD10/oracle/202209061547_IDEMPIERE-5409.sql @@ -0,0 +1,62 @@ +-- IDEMPIERE-5409 +SELECT register_migration_script('202209061547_IDEMPIERE-5409.sql') FROM dual; + +SET SQLBLANKLINES ON +SET DEFINE OFF + +-- Sep 6, 2022, 3:47:13 PM CEST +INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203651,0,0,'Y',TO_TIMESTAMP('2022-09-06 15:47:13','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-09-06 15:47:13','YYYY-MM-DD HH24:MI:SS'),100,'IsMaximizable','Is Maximizable','Is Maximizable','D','250c4f55-23e9-48d7-b5b4-0154ecf8b52a') +; + +-- Sep 6, 2022, 3:48:41 PM CEST +INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType,IsHtml) VALUES (215283,0,'Is Maximizable',50010,'IsMaximizable','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_TIMESTAMP('2022-09-06 15:48:40','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-09-06 15:48:40','YYYY-MM-DD HH24:MI:SS'),100,203651,'Y','N','D','N','N','N','Y','afa27a31-f8f8-4bc4-a734-b136e430793a','Y',0,'N','N','N','N') +; + +-- Sep 6, 2022, 3:50:01 PM CEST +ALTER TABLE PA_DashboardContent ADD IsMaximizable CHAR(1) DEFAULT 'Y' CHECK (IsMaximizable IN ('Y','N')) NOT NULL +; + +-- Sep 6, 2022, 3:50:30 PM CEST +INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,SortNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan,NumLines,IsQuickEntry,IsDefaultFocus,IsAdvancedField,IsQuickForm) VALUES (207187,'Is Maximizable',50010,215283,'Y',0,230,0,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2022-09-06 15:50:30','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-09-06 15:50:30','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','9e4cf3b1-6063-45be-af56-40a8fb1a4a4f','Y',220,1,1,1,'N','N','N','N') +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Element SET Name='Maximizable', PrintName='Maximizable',Updated=TO_TIMESTAMP('2022-09-06 15:51:26','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Element_ID=203651 +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Column SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Element_ID=203651 +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Process_Para SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, AD_Element_ID=203651 WHERE UPPER(ColumnName)='ISMAXIMIZABLE' AND IsCentrallyMaintained='Y' AND AD_Element_ID IS NULL +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Process_Para SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Element_ID=203651 AND IsCentrallyMaintained='Y' +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_InfoColumn SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Element_ID=203651 AND IsCentrallyMaintained='Y' +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Field SET Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Column_ID IN (SELECT AD_Column_ID FROM AD_Column WHERE AD_Element_ID=203651) AND IsCentrallyMaintained='Y' +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_PrintFormatItem SET PrintName='Maximizable', Name='Maximizable' WHERE IsCentrallyMaintained='Y' AND EXISTS (SELECT * FROM AD_Column c WHERE c.AD_Column_ID=AD_PrintFormatItem.AD_Column_ID AND c.AD_Element_ID=203651) +; + +-- Sep 6, 2022, 3:52:43 PM CEST +UPDATE AD_Field SET IsDisplayed='Y', SeqNo=210, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=2, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2022-09-06 15:52:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=207187 +; + +-- Sep 6, 2022, 3:52:43 PM CEST +UPDATE AD_Field SET SeqNo=220, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2022-09-06 15:52:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200260 +; + +-- Sep 6, 2022, 3:52:43 PM CEST +UPDATE AD_Field SET SeqNo=230, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2022-09-06 15:52:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=202286 +; + diff --git a/migration/iD10/postgresql/202209061547_IDEMPIERE-5409.sql b/migration/iD10/postgresql/202209061547_IDEMPIERE-5409.sql new file mode 100644 index 0000000000..f17e002455 --- /dev/null +++ b/migration/iD10/postgresql/202209061547_IDEMPIERE-5409.sql @@ -0,0 +1,59 @@ +-- IDEMPIERE-5409 +SELECT register_migration_script('202209061547_IDEMPIERE-5409.sql') FROM dual; + +-- Sep 6, 2022, 3:47:13 PM CEST +INSERT INTO AD_Element (AD_Element_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,ColumnName,Name,PrintName,EntityType,AD_Element_UU) VALUES (203651,0,0,'Y',TO_TIMESTAMP('2022-09-06 15:47:13','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-09-06 15:47:13','YYYY-MM-DD HH24:MI:SS'),100,'IsMaximizable','Is Maximizable','Is Maximizable','D','250c4f55-23e9-48d7-b5b4-0154ecf8b52a') +; + +-- Sep 6, 2022, 3:48:41 PM CEST +INSERT INTO AD_Column (AD_Column_ID,Version,Name,AD_Table_ID,ColumnName,DefaultValue,FieldLength,IsKey,IsParent,IsMandatory,IsTranslated,IsIdentifier,SeqNo,IsEncrypted,AD_Reference_ID,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,AD_Element_ID,IsUpdateable,IsSelectionColumn,EntityType,IsSyncDatabase,IsAlwaysUpdateable,IsAutocomplete,IsAllowLogging,AD_Column_UU,IsAllowCopy,SeqNoSelection,IsToolbarButton,IsSecure,FKConstraintType,IsHtml) VALUES (215283,0,'Is Maximizable',50010,'IsMaximizable','Y',1,'N','N','Y','N','N',0,'N',20,0,0,'Y',TO_TIMESTAMP('2022-09-06 15:48:40','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-09-06 15:48:40','YYYY-MM-DD HH24:MI:SS'),100,203651,'Y','N','D','N','N','N','Y','afa27a31-f8f8-4bc4-a734-b136e430793a','Y',0,'N','N','N','N') +; + +-- Sep 6, 2022, 3:50:01 PM CEST +ALTER TABLE PA_DashboardContent ADD COLUMN IsMaximizable CHAR(1) DEFAULT 'Y' CHECK (IsMaximizable IN ('Y','N')) NOT NULL +; + +-- Sep 6, 2022, 3:50:30 PM CEST +INSERT INTO AD_Field (AD_Field_ID,Name,AD_Tab_ID,AD_Column_ID,IsDisplayed,DisplayLength,SeqNo,SortNo,IsSameLine,IsHeading,IsFieldOnly,IsEncrypted,AD_Client_ID,AD_Org_ID,IsActive,Created,CreatedBy,Updated,UpdatedBy,IsReadOnly,IsCentrallyMaintained,EntityType,AD_Field_UU,IsDisplayedGrid,SeqNoGrid,XPosition,ColumnSpan,NumLines,IsQuickEntry,IsDefaultFocus,IsAdvancedField,IsQuickForm) VALUES (207187,'Is Maximizable',50010,215283,'Y',0,230,0,'N','N','N','N',0,0,'Y',TO_TIMESTAMP('2022-09-06 15:50:30','YYYY-MM-DD HH24:MI:SS'),100,TO_TIMESTAMP('2022-09-06 15:50:30','YYYY-MM-DD HH24:MI:SS'),100,'N','Y','D','9e4cf3b1-6063-45be-af56-40a8fb1a4a4f','Y',220,1,1,1,'N','N','N','N') +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Element SET Name='Maximizable', PrintName='Maximizable',Updated=TO_TIMESTAMP('2022-09-06 15:51:26','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Element_ID=203651 +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Column SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Element_ID=203651 +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Process_Para SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, AD_Element_ID=203651 WHERE UPPER(ColumnName)='ISMAXIMIZABLE' AND IsCentrallyMaintained='Y' AND AD_Element_ID IS NULL +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Process_Para SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Element_ID=203651 AND IsCentrallyMaintained='Y' +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_InfoColumn SET ColumnName='IsMaximizable', Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Element_ID=203651 AND IsCentrallyMaintained='Y' +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_Field SET Name='Maximizable', Description=NULL, Help=NULL, Placeholder=NULL WHERE AD_Column_ID IN (SELECT AD_Column_ID FROM AD_Column WHERE AD_Element_ID=203651) AND IsCentrallyMaintained='Y' +; + +-- Sep 6, 2022, 3:51:26 PM CEST +UPDATE AD_PrintFormatItem SET PrintName='Maximizable', Name='Maximizable' WHERE IsCentrallyMaintained='Y' AND EXISTS (SELECT * FROM AD_Column c WHERE c.AD_Column_ID=AD_PrintFormatItem.AD_Column_ID AND c.AD_Element_ID=203651) +; + +-- Sep 6, 2022, 3:52:43 PM CEST +UPDATE AD_Field SET IsDisplayed='Y', SeqNo=210, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, XPosition=2, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2022-09-06 15:52:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=207187 +; + +-- Sep 6, 2022, 3:52:43 PM CEST +UPDATE AD_Field SET SeqNo=220, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2022-09-06 15:52:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=200260 +; + +-- Sep 6, 2022, 3:52:43 PM CEST +UPDATE AD_Field SET SeqNo=230, AD_Reference_Value_ID=NULL, AD_Val_Rule_ID=NULL, IsToolbarButton=NULL,Updated=TO_TIMESTAMP('2022-09-06 15:52:43','YYYY-MM-DD HH24:MI:SS'),UpdatedBy=100 WHERE AD_Field_ID=202286 +; + diff --git a/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java b/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java index e9c74a242c..c854e7a5c2 100644 --- a/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java +++ b/org.adempiere.base/src/org/compiere/model/I_PA_DashboardContent.java @@ -260,6 +260,15 @@ public interface I_PA_DashboardContent */ public boolean isEmbedReportContent(); + /** Column name IsMaximizable */ + public static final String COLUMNNAME_IsMaximizable = "IsMaximizable"; + + /** Set Maximizable */ + public void setIsMaximizable (boolean IsMaximizable); + + /** Get Maximizable */ + public boolean isMaximizable(); + /** Column name IsShowInDashboard */ public static final String COLUMNNAME_IsShowInDashboard = "IsShowInDashboard"; @@ -391,4 +400,4 @@ public interface I_PA_DashboardContent * URI for Dashboard Gadget */ public String getZulFilePath(); -} \ No newline at end of file +} diff --git a/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java b/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java index 084f7089f7..52cedb8b3c 100644 --- a/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java +++ b/org.adempiere.base/src/org/compiere/model/X_PA_DashboardContent.java @@ -33,7 +33,7 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, /** * */ - private static final long serialVersionUID = 20220818L; + private static final long serialVersionUID = 20220906L; /** Standard Constructor */ public X_PA_DashboardContent (Properties ctx, int PA_DashboardContent_ID, String trxName) @@ -46,6 +46,8 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, setIsCollapsible (true); // Y setIsEmbedReportContent (false); +// N + setIsMaximizable (false); // N setIsShowInDashboard (true); // 'Y' @@ -67,6 +69,8 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, setIsCollapsible (true); // Y setIsEmbedReportContent (false); +// N + setIsMaximizable (false); // N setIsShowInDashboard (true); // 'Y' @@ -413,6 +417,28 @@ public class X_PA_DashboardContent extends PO implements I_PA_DashboardContent, return false; } + /** Set Maximizable. + @param IsMaximizable Maximizable + */ + public void setIsMaximizable (boolean IsMaximizable) + { + set_Value (COLUMNNAME_IsMaximizable, Boolean.valueOf(IsMaximizable)); + } + + /** Get Maximizable. + @return Maximizable */ + public boolean isMaximizable() + { + Object oo = get_Value(COLUMNNAME_IsMaximizable); + if (oo != null) + { + if (oo instanceof Boolean) + return ((Boolean)oo).booleanValue(); + return "Y".equals(oo); + } + return false; + } + /** Set Show in Dashboard. @param IsShowInDashboard Show the dashlet in the dashboard */ diff --git a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java index ca49e4dc3a..9d61a9c4e8 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java +++ b/org.adempiere.ui.zk/WEB-INF/src/org/adempiere/webui/desktop/DashboardController.java @@ -329,7 +329,7 @@ public class DashboardController implements EventListener { panelList.add(panel); panel.addEventListener(Events.ON_MAXIMIZE, this); panel.setSclass("dashboard-widget"); - panel.setMaximizable(true); + panel.setMaximizable(dc.isMaximizable()); String description = dc.get_Translation(MDashboardContent.COLUMNNAME_Description); if(description != null) diff --git a/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/fragment/gadget.css.dsp b/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/fragment/gadget.css.dsp index 30bbbdc066..0357ecf834 100644 --- a/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/fragment/gadget.css.dsp +++ b/org.adempiere.ui.zk/WEB-INF/src/web/theme/default/css/fragment/gadget.css.dsp @@ -36,7 +36,7 @@ .z-panel-head .z-panel-header { padding: 0 0 2px 0; color: #262626; - background: #F4F4F4; + background: white; font-weight: 300; font-size: 13px; } @@ -44,7 +44,7 @@ .z-caption .z-caption-content { padding: 1px 1px 1px 6px; color: #262626; - font-weight: 300; + font-weight: 500; font-size: 13px; cursor: move; }