You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2020/04/03 12:29:08 UTC
[openmeetings] branch master updated: [OPENMEETINGS-2165] installer
is converted
This is an automated email from the ASF dual-hosted git repository.
solomax pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push:
new ed209ab [OPENMEETINGS-2165] installer is converted
ed209ab is described below
commit ed209abdb2fc5a2d4972037a55a87b660dbb4f82
Author: Maxim Solodovnik <so...@gmail.com>
AuthorDate: Fri Apr 3 19:28:50 2020 +0700
[OPENMEETINGS-2165] installer is converted
---
.../web/admin/configurations/ConfigsPanel.html | 2 +-
.../web/app/Application.properties.xml | 2 +-
.../web/app/Application_ar.properties.xml | 2 +-
.../web/app/Application_bg.properties.xml | 2 +-
.../web/app/Application_bn.properties.xml | 2 +-
.../web/app/Application_ca.properties.xml | 2 +-
.../web/app/Application_cs.properties.xml | 2 +-
.../web/app/Application_da.properties.xml | 2 +-
.../web/app/Application_de.properties.xml | 2 +-
.../web/app/Application_el.properties.xml | 2 +-
.../web/app/Application_es.properties.xml | 2 +-
.../web/app/Application_fa.properties.xml | 2 +-
.../web/app/Application_fi.properties.xml | 2 +-
.../web/app/Application_fr.properties.xml | 2 +-
.../web/app/Application_gl.properties.xml | 2 +-
.../web/app/Application_he.properties.xml | 2 +-
.../web/app/Application_hu.properties.xml | 2 +-
.../web/app/Application_in.properties.xml | 2 +-
.../web/app/Application_it.properties.xml | 2 +-
.../web/app/Application_ja.properties.xml | 2 +-
.../web/app/Application_ko.properties.xml | 2 +-
.../web/app/Application_nl.properties.xml | 2 +-
.../web/app/Application_pl.properties.xml | 2 +-
.../web/app/Application_pt.properties.xml | 2 +-
.../web/app/Application_pt_BR.properties.xml | 2 +-
.../web/app/Application_ru.properties.xml | 2 +-
.../web/app/Application_sk.properties.xml | 2 +-
.../web/app/Application_sv.properties.xml | 2 +-
.../web/app/Application_th.properties.xml | 2 +-
.../web/app/Application_tr.properties.xml | 2 +-
.../web/app/Application_uk.properties.xml | 2 +-
.../web/app/Application_zh_CN.properties.xml | 2 +-
.../web/app/Application_zh_TW.properties.xml | 2 +-
.../web/pages/install/InstallWizard$DbStep.html | 22 +-
.../pages/install/InstallWizard$ParamsStep1.html | 42 +--
.../pages/install/InstallWizard$ParamsStep2.html | 160 +++++------
.../pages/install/InstallWizard$ParamsStep3.html | 96 +++----
.../pages/install/InstallWizard$ParamsStep4.html | 69 ++---
.../web/pages/install/InstallWizard.java | 295 +++++++++++++--------
.../web/pages/install/InstallWizardPage.html | 2 +-
.../web/pages/install/InstallWizardPage.java | 11 +-
openmeetings-web/src/main/webapp/css/raw-admin.css | 2 +-
.../src/main/webapp/css/raw-general.css | 4 +
pom.xml | 2 +-
44 files changed, 415 insertions(+), 356 deletions(-)
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html
index 17accc1..e79b139 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/admin/configurations/ConfigsPanel.html
@@ -66,7 +66,7 @@
<div wicket:id="boolean-box">
<label wicket:for="valueB" class="col-3 text-right"><wicket:message key="271" /></label>
<div class="onoffswitch">
- <input type="checkbox" class="onoff-checkbox" wicket:id="valueB">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="valueB"/>
<label class="onoff-label" wicket:for="valueB"></label>
</div>
</div>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml
index 8e9581a..a0cdff1 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml
index 007df38..7a5f45a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ar.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml
index adcdbd1..0cffd4b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bg.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bn.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bn.properties.xml
index 73aa4e0..b3ffcab 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bn.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_bn.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml
index a901844..6aa3a39 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ca.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml
index beb5ded..ef76bcb 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_cs.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml
index 3c66292..6c96c95 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_da.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml
index 3c54727..4b18a7a 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_de.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
Standardmäßig verwendet {0} die integrierte
{1} Datenbank. In Produktivumgebungen wird jedoch der Einsatz von {2}, {3}, {4}, {5} or {6} empfohlen.
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml
index 43fb9ca..4326b1e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_el.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml
index e96cdcb..f15cbf4 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_es.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
{0} viene predeterminado para emplear la base de datos {1}. Para
medios de producción considere emplear {2}, {3}, {4}, {5} u {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml
index e0374ab..8807393 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fa.properties.xml
@@ -715,7 +715,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml
index 79b833c..43285d0 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fi.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml
index 9fa38ea..1e30974 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_fr.properties.xml
@@ -715,7 +715,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
Par défaut {0} utilise la base de données {1}. Dans un environnement de production vous devriez opter pour
{2}, {3}, {4}, {5} or {6}.
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml
index af8efd0..81379e0 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_gl.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_he.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_he.properties.xml
index 8e9581a..a0cdff1 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_he.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_he.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml
index 130fab4..7daaed6 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_hu.properties.xml
@@ -715,7 +715,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
Az {0} alapértelmezette a beépített {1} adatbázist használja.
További lehetőségként használható a {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_in.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_in.properties.xml
index 3ea6048..7dedff6 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_in.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_in.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml
index 9b0053c..9b5ee8f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_it.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
Per default {0} usa il database integrato {1}. Per
ambienti di produzione dovresti considerare l'uso di {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml
index 171742b..16c27a7 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ja.properties.xml
@@ -715,7 +715,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
既定では、{0} は組み込み済みデータベース {1} を使用しますが、
本番環境では、下記のデータベースの使用をご検討ください: {2}, {3}, {4}, {5}, {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>注:</strong> 予見し難い DB ログイン名と8文字以上の強固なパスワードを使用してください。</p>
</div>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml
index 222c559..3120bb3 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ko.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml
index e83888c..9eb2051 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_nl.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml
index a16fbe4..8924557 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pl.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml
index 3188c80..f6be8db 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml
index b425e62..0b2a1e5 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_pt_BR.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml
index 45d1c1c..ed98304 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_ru.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
По умолчанию {0} использует интегрированную базу данных {1}. В
продакшине Вы должны задуматься об использовании таких баз, как {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>ВНИМАНИЕ</strong> Пожалуйста используйте логин БД, который трудно угадать и 'сложный' пароль с длинной не менее 8 символов.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml
index a2edf93..abae8c2 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sk.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml
index 41ffb65..30b0fee 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_sv.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml
index 8ceaa4e..be9aa8f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_th.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml
index b91e881..f63fa95 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_tr.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml
index dd6d0db..7e50ab8 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_uk.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
По умолчанию {0} использует интегрированную базу данных {1}. В
продакшине Вы должны задуматься об использовании таких баз, как {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml
index e9ce8ce..317636f 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_CN.properties.xml
@@ -714,7 +714,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
<blockquote>
默认 {0} 使用集成 {1} 数据库。对于生产环境,你应该考虑使用 {2},{3},{4},{5} 或 {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml
index a514567..4024990 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/app/Application_zh_TW.properties.xml
@@ -716,7 +716,7 @@ see https://openmeetings.apache.org/LanguageEditor.html for Details
By default {0} uses the integrated {1} database. For
production environment you should consider using {2}, {3}, {4}, {5} or {6}
</blockquote>
- <div class="ui-state-highlight ui-corner-all installer-note">
+ <div class="alert alert-warning" role="alert">
<p><strong>NOTE</strong> Please use unpredictable DB login and 'strong' password with length 8 characters or more.</p>
</div>
]]></entry>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$DbStep.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$DbStep.html
index 7a2a6e4..a0a04d2 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$DbStep.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$DbStep.html
@@ -21,30 +21,36 @@
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
- <fieldset class="ui-widget-content" id="userData">
+ <fieldset class="" id="userData">
<legend><wicket:message key="install.wizard.db.step.field.title"/></legend>
<div wicket:id="note"></div>
<form class="adminForm" wicket:id="form">
<div class="formelement">
- <label wicket:for="dbType"><wicket:message key="install.wizard.db.step.dbtype" /></label> <select wicket:id="dbType"></select>
+ <label wicket:for="dbType" class="col-3 text-right"><wicket:message key="install.wizard.db.step.dbtype" /></label>
+ <select wicket:id="dbType" class="custom-select col-3"></select>
</div>
<div wicket:enclosure="host" class="formelement">
- <label wicket:for="host"><wicket:message key="install.wizard.db.step.host" /></label> <input type="text" wicket:id="host"/>
+ <label wicket:for="host" class="col-3 text-right"><wicket:message key="install.wizard.db.step.host" /></label>
+ <input type="text" wicket:id="host" class="col-3"/>
</div>
<div wicket:enclosure="port" class="formelement">
- <label wicket:for="port"><wicket:message key="install.wizard.db.step.port" /></label> <input type="text" wicket:id="port"/>
+ <label wicket:for="port" class="col-3 text-right"><wicket:message key="install.wizard.db.step.port" /></label>
+ <input type="text" wicket:id="port" class="col-3"/>
</div>
<div class="formelement">
- <label wicket:for="dbname"><wicket:message key="install.wizard.db.step.dbname" /></label> <input type="text" wicket:id="dbname"/>
+ <label wicket:for="dbname" class="col-3 text-right"><wicket:message key="install.wizard.db.step.dbname" /></label>
+ <input type="text" wicket:id="dbname" class="col-3"/>
</div>
<div wicket:enclosure="login" class="formelement">
- <label wicket:for="login"><wicket:message key="install.wizard.db.step.user" /></label> <input type="text" wicket:id="login"/>
+ <label wicket:for="login" class="col-3 text-right"><wicket:message key="install.wizard.db.step.user" /></label>
+ <input type="text" wicket:id="login" class="col-3"/>
</div>
<div wicket:enclosure="password" class="formelement">
- <label wicket:for="password"><wicket:message key="install.wizard.db.step.pass" /></label> <input type="text" wicket:id="password"/>
+ <label wicket:for="password" class="col-3 text-right"><wicket:message key="install.wizard.db.step.pass" /></label>
+ <input type="text" wicket:id="password" class="col-3"/>
</div>
<div class="formelement">
- <button class="align-right" wicket:id="check"><wicket:message key="install.wizard.db.step.check"/></button>
+ <button class="align-right" wicket:id="check"></button>
</div>
</form>
</fieldset>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep1.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep1.html
index 1c70b00..b3ab90c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep1.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep1.html
@@ -21,29 +21,31 @@
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
- <fieldset class="ui-widget-content" id="userData">
+ <fieldset class="" id="userData">
<legend><wicket:message key="install.wizard.params.step1.userdata"/></legend>
- <ul class="paramList">
- <li><label wicket:for="username"><wicket:message key="install.wizard.params.step1.username"/></label>
- <input wicket:id="username" wicket:message="title:install.wizard.params.step1.username.title" type="text" />
- </li>
- <li><label wicket:for="password"><wicket:message key="install.wizard.params.step1.password"/></label>
- <input wicket:id="password" wicket:message="title:install.wizard.params.step1.password.title" type="password" />
- </li>
- <li><label wicket:for="email"><wicket:message key="install.wizard.params.step1.email"/></label>
- <input wicket:id="email" wicket:message="title:install.wizard.params.step1.email.title" type="text" />
- </li>
- <li><label wicket:for="timeZone"><wicket:message key="install.wizard.params.step1.tz"/></label>
- <select wicket:id="timeZone"></select>
- </li>
- </ul>
+ <div class="formelement">
+ <label wicket:for="username" class="col-3 text-right"><wicket:message key="install.wizard.params.step1.username"/></label>
+ <input wicket:id="username" wicket:message="title:install.wizard.params.step1.username.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="password" class="col-3 text-right"><wicket:message key="install.wizard.params.step1.password"/></label>
+ <input wicket:id="password" wicket:message="title:install.wizard.params.step1.password.title" type="password" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="email" class="col-3 text-right"><wicket:message key="install.wizard.params.step1.email"/></label>
+ <input wicket:id="email" wicket:message="title:install.wizard.params.step1.email.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="timeZone" class="col-3 text-right"><wicket:message key="install.wizard.params.step1.tz"/></label>
+ <select wicket:id="timeZone" class="custom-select col-3"></select>
+ </div>
</fieldset>
- <fieldset class="ui-widget-content" id="userGroupa">
+ <fieldset class="" id="userGroupa">
<legend><wicket:message key="install.wizard.params.step1.groupdata"/></legend>
- <ul class="paramList">
- <li><label wicket:for="group"><wicket:message key="install.wizard.params.step1.group"/></label>
- <input wicket:id="group" wicket:message="title:install.wizard.params.step1.group.title" type="text" /></li>
- </ul>
+ <div class="formelement">
+ <label wicket:for="group" class="col-3 text-right"><wicket:message key="install.wizard.params.step1.group"/></label>
+ <input wicket:id="group" wicket:message="title:install.wizard.params.step1.group.title" type="text" class="col-3"/>
+ </div>
</fieldset>
</wicket:panel>
</html>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep2.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep2.html
index 9e8d228..5f2a98e 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep2.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep2.html
@@ -21,100 +21,74 @@
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
- <fieldset class="ui-widget-content" id="userConf">
+ <fieldset class="" id="userConf">
<legend><wicket:message key="install.wizard.params.step2.configuration"/></legend>
- <ul class="paramList">
- <li><label wicket:for="allowFrontendRegister"><wicket:message key="install.wizard.params.step2.allowFrontendRegister"/></label>
- <div class="onoffswitch">
- <input type="checkbox" class="onoffswitch-checkbox" wicket:id="allowFrontendRegister">
- <label class="onoffswitch-label" wicket:for="allowFrontendRegister">
- <span class="onoffswitch-inner">
- <span class="before"></span>
- <span class="after"></span>
- </span>
- <span class="onoffswitch-switch"></span>
- </label>
- </div>
- </li>
- <li><label wicket:for="sendEmailAtRegister"><wicket:message key="install.wizard.params.step2.sendEmailAtRegister"/></label>
- <div class="onoffswitch">
- <input type="checkbox" class="onoffswitch-checkbox" wicket:id="sendEmailAtRegister">
- <label class="onoffswitch-label" wicket:for="sendEmailAtRegister">
- <span class="onoffswitch-inner">
- <span class="before"></span>
- <span class="after"></span>
- </span>
- <span class="onoffswitch-switch"></span>
- </label>
- </div>
- </li>
- <li><label wicket:for="sendEmailWithVerficationCode"><wicket:message key="install.wizard.params.step2.sendEmailWithVerficationCode"/></label>
- <div class="onoffswitch">
- <input type="checkbox" class="onoffswitch-checkbox" wicket:id="sendEmailWithVerficationCode">
- <label class="onoffswitch-label" wicket:for="sendEmailWithVerficationCode">
- <span class="onoffswitch-inner">
- <span class="before"></span>
- <span class="after"></span>
- </span>
- <span class="onoffswitch-switch"></span>
- </label>
- </div>
- </li>
- <li><label wicket:for="createDefaultObjects"><wicket:message key="install.wizard.params.step2.createDefaultObjects"/></label>
- <div class="onoffswitch">
- <input type="checkbox" class="onoffswitch-checkbox" wicket:id="createDefaultObjects">
- <label class="onoffswitch-label" wicket:for="createDefaultObjects">
- <span class="onoffswitch-inner">
- <span class="before"></span>
- <span class="after"></span>
- </span>
- <span class="onoffswitch-switch"></span>
- </label>
- </div>
- </li>
- <li><label wicket:for="mailReferer"><wicket:message key="install.wizard.params.step2.mailReferer"/></label>
- <input wicket:id="mailReferer" wicket:message="title:install.wizard.params.step2.mailReferer.title" type="text" />
- </li>
- <li><label wicket:for="smtpServer"><wicket:message key="install.wizard.params.step2.smtpServer"/></label>
- <input wicket:id="smtpServer" wicket:message="title:install.wizard.params.step2.smtpServer.title" type="text" />
- </li>
- <li><label wicket:for="smtpPort"><wicket:message key="install.wizard.params.step2.smtpPort"/></label>
- <input wicket:id="smtpPort" wicket:message="title:install.wizard.params.step2.smtpPort.title" type="text" />
- </li>
- <li><label wicket:for="mailAuthName"><wicket:message key="install.wizard.params.step2.mailAuthName"/></label>
- <input wicket:id="mailAuthName" wicket:message="title:install.wizard.params.step2.mailAuthName.title" type="text" />
- </li>
- <li><label wicket:for="mailAuthPass"><wicket:message key="install.wizard.params.step2.mailAuthPass"/></label>
- <input wicket:id="mailAuthPass" wicket:message="title:install.wizard.params.step2.mailAuthPass.title" type="password" />
- </li>
- <li><label wicket:for="mailUseTls"><wicket:message key="install.wizard.params.step2.mailUseTls"/></label>
- <div class="onoffswitch">
- <input type="checkbox" class="onoffswitch-checkbox" wicket:id="mailUseTls">
- <label class="onoffswitch-label" wicket:for="mailUseTls">
- <span class="onoffswitch-inner">
- <span class="before"></span>
- <span class="after"></span>
- </span>
- <span class="onoffswitch-switch"></span>
- </label>
- </div>
- </li>
- <li><label wicket:for="replyToOrganizer"><wicket:message key="install.wizard.params.step2.replyToOrganizer"/></label>
- <div class="onoffswitch">
- <input type="checkbox" class="onoffswitch-checkbox" wicket:id="replyToOrganizer">
- <label class="onoffswitch-label" wicket:for="replyToOrganizer">
- <span class="onoffswitch-inner">
- <span class="before"></span>
- <span class="after"></span>
- </span>
- <span class="onoffswitch-switch"></span>
- </label>
- </div>
- </li>
- <li><label wicket:for="defaultLangId"><wicket:message key="install.wizard.params.step2.defaultLangId"/></label>
- <select wicket:id="defaultLangId"></select>
- </li>
- </ul>
+ <div class="formelement">
+ <label wicket:for="allowFrontendRegister" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.allowFrontendRegister"/></label>
+ <div class="onoffswitch">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="allowFrontendRegister"/>
+ <label class="onoff-label" wicket:for="allowFrontendRegister"></label>
+ </div>
+ </div>
+ <div class="formelement">
+ <label wicket:for="sendEmailAtRegister" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.sendEmailAtRegister"/></label>
+ <div class="onoffswitch">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="sendEmailAtRegister"/>
+ <label class="onoff-label" wicket:for="sendEmailAtRegister"></label>
+ </div>
+ </div>
+ <div class="formelement">
+ <label wicket:for="sendEmailWithVerficationCode" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.sendEmailWithVerficationCode"/></label>
+ <div class="onoffswitch">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="sendEmailWithVerficationCode"/>
+ <label class="onoff-label" wicket:for="sendEmailWithVerficationCode"></label>
+ </div>
+ </div>
+ <div class="formelement">
+ <label wicket:for="createDefaultObjects" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.createDefaultObjects"/></label>
+ <div class="onoffswitch">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="createDefaultObjects"/>
+ <label class="onoff-label" wicket:for="createDefaultObjects"></label>
+ </div>
+ </div>
+ <div class="formelement">
+ <label wicket:for="mailReferer" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.mailReferer"/></label>
+ <input wicket:id="mailReferer" wicket:message="title:install.wizard.params.step2.mailReferer.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="smtpServer" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.smtpServer"/></label>
+ <input wicket:id="smtpServer" wicket:message="title:install.wizard.params.step2.smtpServer.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="smtpPort" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.smtpPort"/></label>
+ <input wicket:id="smtpPort" wicket:message="title:install.wizard.params.step2.smtpPort.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="mailAuthName" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.mailAuthName"/></label>
+ <input wicket:id="mailAuthName" wicket:message="title:install.wizard.params.step2.mailAuthName.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="mailAuthPass" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.mailAuthPass"/></label>
+ <input wicket:id="mailAuthPass" wicket:message="title:install.wizard.params.step2.mailAuthPass.title" type="password" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="mailUseTls" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.mailUseTls"/></label>
+ <div class="onoffswitch">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="mailUseTls"/>
+ <label class="onoff-label" wicket:for="mailUseTls"></label>
+ </div>
+ </div>
+ <div class="formelement">
+ <label wicket:for="replyToOrganizer" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.replyToOrganizer"/></label>
+ <div class="onoffswitch">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="replyToOrganizer"/>
+ <label class="onoff-label" wicket:for="replyToOrganizer"></label>
+ </div>
+ </div>
+ <div class="formelement">
+ <label wicket:for="defaultLangId" class="col-3 text-right"><wicket:message key="install.wizard.params.step2.defaultLangId"/></label>
+ <select wicket:id="defaultLangId" class="custom-select col-3"></select>
+ </div>
</fieldset>
</wicket:panel>
</html>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep3.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep3.html
index fa29e07..fd0087c 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep3.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep3.html
@@ -21,53 +21,57 @@
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
- <fieldset class="ui-widget-content" id="userConf1">
+ <fieldset class="" id="userConf1">
<legend><wicket:message key="install.wizard.params.step3.converters"/></legend>
- <ul class="paramList">
- <li><label wicket:for="docDpi"><wicket:message key="install.wizard.params.step3.docDpi"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step3.docDpi.text,alt:install.wizard.params.step3.docDpi.text"></span>
- </label>
- <input wicket:id="docDpi" wicket:message="title:install.wizard.params.step3.docDpi.title" type="text" />
- </li>
- <li><label wicket:for="docQuality"><wicket:message key="install.wizard.params.step3.docQuality"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step3.docQuality.text,alt:install.wizard.params.step3.docQuality.text"></span>
- </label>
- <input wicket:id="docQuality" wicket:message="title:install.wizard.params.step3.docQuality.title" type="text" />
- </li>
- <li><label wicket:for="imageMagicPath"><wicket:message key="install.wizard.params.step3.imageMagicPath"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step3.imageMagicPath.text,alt:install.wizard.params.step3.imageMagicPath.text"></span>
- </label>
- <input wicket:id="imageMagicPath" wicket:message="title:install.wizard.params.step3.imageMagicPath.title" type="text" />
- <button class="formelement" wicket:id="validateImageMagic"><wicket:message key="install.wizard.db.step.check"/></button>
- </li>
- <li><label wicket:for="ffmpegPath"><wicket:message key="install.wizard.params.step3.ffmpegPath"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step3.ffmpegPath.text,alt:install.wizard.params.step3.ffmpegPath.text"></span>
- </label>
- <input wicket:id="ffmpegPath" wicket:message="title:install.wizard.params.step3.ffmpegPath.title" type="text" />
- <button class="formelement" wicket:id="validateFfmpeg"><wicket:message key="install.wizard.db.step.check"/></button>
- </li>
- <li><label wicket:for="soxPath"><wicket:message key="install.wizard.params.step3.soxPath"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step3.soxPath.text,alt:install.wizard.params.step3.soxPath.text"></span>
- </label>
- <input wicket:id="soxPath" wicket:message="title:install.wizard.params.step3.soxPath.title" type="text" />
- <button class="formelement" wicket:id="validateSox"><wicket:message key="install.wizard.db.step.check"/></button>
- </li>
- <li><label wicket:for="officePath"><wicket:message key="install.wizard.params.step3.officePath"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step3.officePath.text,alt:install.wizard.params.step3.officePath.text"></span>
- </label>
- <input wicket:id="officePath" wicket:message="title:install.wizard.params.step3.officePath.title" type="text" />
- <button class="formelement" wicket:id="validateOffice"><wicket:message key="install.wizard.db.step.check"/></button>
- </li>
- <li>
- <p>
- <em>
- <wicket:message key="install.wizard.params.step3.seeAlso"/> <a
- href="https://openmeetings.apache.org/installation.html"
- rel="noopener noreferrer" target="_blank"><wicket:message key="install.wizard.params.step3.installation"/></a>
- </em>
- </p>
- </li>
- </ul>
+ <div class="formelement">
+ <label wicket:for="docDpi" class="col-3 text-right"><wicket:message key="install.wizard.params.step3.docDpi"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step3.docDpi.text,alt:install.wizard.params.step3.docDpi.text"></i>
+ </label>
+ <input wicket:id="docDpi" wicket:message="title:install.wizard.params.step3.docDpi.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="docQuality" class="col-3 text-right"><wicket:message key="install.wizard.params.step3.docQuality"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step3.docQuality.text,alt:install.wizard.params.step3.docQuality.text"></i>
+ </label>
+ <input wicket:id="docQuality" wicket:message="title:install.wizard.params.step3.docQuality.title" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="imageMagicPath" class="col-3 text-right"><wicket:message key="install.wizard.params.step3.imageMagicPath"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step3.imageMagicPath.text,alt:install.wizard.params.step3.imageMagicPath.text"></i>
+ </label>
+ <input wicket:id="imageMagicPath" wicket:message="title:install.wizard.params.step3.imageMagicPath.title" type="text" class="col-3"/>
+ <button class="formelement" wicket:id="validateImageMagic"></button>
+ </div>
+ <div class="formelement">
+ <label wicket:for="ffmpegPath" class="col-3 text-right"><wicket:message key="install.wizard.params.step3.ffmpegPath"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step3.ffmpegPath.text,alt:install.wizard.params.step3.ffmpegPath.text"></i>
+ </label>
+ <input wicket:id="ffmpegPath" wicket:message="title:install.wizard.params.step3.ffmpegPath.title" type="text" class="col-3"/>
+ <button class="formelement" wicket:id="validateFfmpeg"></button>
+ </div>
+ <div class="formelement">
+ <label wicket:for="soxPath" class="col-3 text-right"><wicket:message key="install.wizard.params.step3.soxPath"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step3.soxPath.text,alt:install.wizard.params.step3.soxPath.text"></i>
+ </label>
+ <input wicket:id="soxPath" wicket:message="title:install.wizard.params.step3.soxPath.title" type="text" class="col-3"/>
+ <button class="formelement" wicket:id="validateSox"></button>
+ </div>
+ <div class="formelement">
+ <label wicket:for="officePath" class="col-3 text-right"><wicket:message key="install.wizard.params.step3.officePath"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step3.officePath.text,alt:install.wizard.params.step3.officePath.text"></i>
+ </label>
+ <input wicket:id="officePath" wicket:message="title:install.wizard.params.step3.officePath.title" type="text" class="col-3"/>
+ <button class="formelement" wicket:id="validateOffice"></button>
+ </div>
+ <div class="formelement">
+ <p>
+ <em>
+ <wicket:message key="install.wizard.params.step3.seeAlso"/> <a
+ href="https://openmeetings.apache.org/installation.html"
+ rel="noopener noreferrer" target="_blank"><wicket:message key="install.wizard.params.step3.installation"/></a>
+ </em>
+ </p>
+ </div>
</fieldset>
</wicket:panel>
</html>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep4.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep4.html
index b2f9976..056c454 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep4.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard$ParamsStep4.html
@@ -21,49 +21,38 @@
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<wicket:panel>
- <fieldset class="ui-widget-content" id="userConf2">
+ <fieldset class="" id="userConf2">
<legend><wicket:message key="install.wizard.params.step4.crypt"/></legend>
- <ul class="paramList">
- <li>
- <label wicket:for="cryptClassName"><wicket:message key="install.wizard.params.step4.cryptClassName"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step4.cryptClassName.text,alt:install.wizard.params.step4.cryptClassName.text"></span>
- </label>
- <input wicket:id="cryptClassName" type="text"
- wicket:message="title:install.wizard.params.step4.cryptClassName.title" />
- </li>
- </ul>
+ <div class="formelement">
+ <label wicket:for="cryptClassName" class="col-3 text-right"><wicket:message key="install.wizard.params.step4.cryptClassName"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step4.cryptClassName.text,alt:install.wizard.params.step4.cryptClassName.text"></i>
+ </label>
+ <input wicket:id="cryptClassName" type="text" wicket:message="title:install.wizard.params.step4.cryptClassName.title" class="col-3"/>
+ </div>
</fieldset>
- <fieldset class="ui-widget-content" id="sip">
+ <fieldset class="" id="sip">
<legend><wicket:message key="install.wizard.params.step4.sip"/></legend>
- <ul class="paramList">
- <li>
- <label wicket:for="sipEnable"><wicket:message key="install.wizard.params.step4.sipEnable"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step4.sipEnable.text,alt:install.wizard.params.step4.sipEnable.text"></span>
- </label>
- <div class="onoffswitch">
- <input type="checkbox" class="onoffswitch-checkbox" wicket:id="sipEnable">
- <label class="onoffswitch-label" wicket:for="sipEnable">
- <span class="onoffswitch-inner">
- <span class="before"></span>
- <span class="after"></span>
- </span>
- <span class="onoffswitch-switch"></span>
- </label>
- </div>
- </li>
- <li>
- <label wicket:for="sipRoomPrefix"><wicket:message key="install.wizard.params.step4.sipRoomPrefix"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step4.sipRoomPrefix.text,alt:install.wizard.params.step4.sipRoomPrefix.text"></span>
- </label>
- <input wicket:id="sipRoomPrefix" type="text" />
- </li>
- <li>
- <label wicket:for="sipExtenContext"><wicket:message key="install.wizard.params.step4.sipExtenContext"/>
- <span class="info-title" wicket:message="title:install.wizard.params.step4.sipExtenContext.text,alt:install.wizard.params.step4.sipExtenContext.text"></span>
- </label>
- <input wicket:id="sipExtenContext" type="text" />
- </li>
- </ul>
+ <div class="formelement">
+ <label wicket:for="sipEnable" class="col-3 text-right"><wicket:message key="install.wizard.params.step4.sipEnable"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step4.sipEnable.text,alt:install.wizard.params.step4.sipEnable.text"></i>
+ </label>
+ <div class="onoffswitch">
+ <input type="checkbox" class="onoff-checkbox" wicket:id="sipEnable"/>
+ <label class="onoff-label" wicket:for="sipEnable"></label>
+ </div>
+ </div>
+ <div class="formelement">
+ <label wicket:for="sipRoomPrefix" class="col-3 text-right"><wicket:message key="install.wizard.params.step4.sipRoomPrefix"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step4.sipRoomPrefix.text,alt:install.wizard.params.step4.sipRoomPrefix.text"></i>
+ </label>
+ <input wicket:id="sipRoomPrefix" type="text" class="col-3"/>
+ </div>
+ <div class="formelement">
+ <label wicket:for="sipExtenContext" class="col-3 text-right"><wicket:message key="install.wizard.params.step4.sipExtenContext"/>
+ <i class="fas fa-info-circle m-1 text-info" wicket:message="title:install.wizard.params.step4.sipExtenContext.text,alt:install.wizard.params.step4.sipExtenContext.text"></i>
+ </label>
+ <input wicket:id="sipExtenContext" type="text" class="col-3"/>
+ </div>
</fieldset>
</wicket:panel>
</html>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
index 4794015..30af522 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizard.java
@@ -54,15 +54,22 @@ import org.apache.openmeetings.web.app.Application;
import org.apache.openmeetings.web.app.WebSession;
import org.apache.openmeetings.web.common.ErrorMessagePanel;
import org.apache.openmeetings.web.common.OmLabel;
-import org.apache.wicket.ajax.AbstractAjaxTimerBehavior;
+import org.apache.wicket.Component;
import org.apache.wicket.ajax.AjaxRequestTarget;
+import org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
+import org.apache.wicket.ajax.form.AjaxFormSubmitBehavior;
import org.apache.wicket.ajax.form.OnChangeAjaxBehavior;
+import org.apache.wicket.core.request.handler.IPartialPageRequestHandler;
import org.apache.wicket.extensions.validation.validator.RfcCompliantEmailAddressValidator;
+import org.apache.wicket.extensions.wizard.IWizard;
+import org.apache.wicket.extensions.wizard.WizardButton;
+import org.apache.wicket.extensions.wizard.WizardButtonBar;
import org.apache.wicket.extensions.wizard.dynamic.DynamicWizardModel;
import org.apache.wicket.extensions.wizard.dynamic.DynamicWizardStep;
import org.apache.wicket.extensions.wizard.dynamic.IDynamicWizardStep;
import org.apache.wicket.markup.html.WebMarkupContainer;
import org.apache.wicket.markup.html.basic.Label;
+import org.apache.wicket.markup.html.form.Button;
import org.apache.wicket.markup.html.form.CheckBox;
import org.apache.wicket.markup.html.form.ChoiceRenderer;
import org.apache.wicket.markup.html.form.DropDownChoice;
@@ -76,6 +83,7 @@ import org.apache.wicket.model.Model;
import org.apache.wicket.model.PropertyModel;
import org.apache.wicket.model.ResourceModel;
import org.apache.wicket.model.StringResourceModel;
+import org.apache.wicket.request.cycle.RequestCycle;
import org.apache.wicket.spring.injection.annot.SpringBean;
import org.apache.wicket.util.string.Strings;
import org.slf4j.Logger;
@@ -83,37 +91,50 @@ import org.slf4j.LoggerFactory;
import org.springframework.orm.jpa.LocalEntityManagerFactoryBean;
import org.springframework.web.context.support.XmlWebApplicationContext;
-import com.googlecode.wicket.jquery.core.JQueryBehavior;
import com.googlecode.wicket.jquery.core.Options;
-import com.googlecode.wicket.jquery.ui.form.button.AjaxButton;
-import com.googlecode.wicket.jquery.ui.form.button.IndicatingAjaxButton;
-import com.googlecode.wicket.jquery.ui.widget.dialog.DialogButton;
-import com.googlecode.wicket.jquery.ui.widget.progressbar.ProgressBar;
import com.googlecode.wicket.jquery.ui.widget.tooltip.TooltipBehavior;
-import com.googlecode.wicket.jquery.ui.widget.wizard.AbstractWizard;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.BootstrapAjaxButton;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.ButtonBehavior;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons;
+import de.agilecoders.wicket.core.markup.html.bootstrap.button.Buttons.Type;
import de.agilecoders.wicket.core.markup.html.bootstrap.common.NotificationPanel;
+import de.agilecoders.wicket.core.markup.html.bootstrap.components.progress.UpdatableProgressBar;
+import de.agilecoders.wicket.core.markup.html.bootstrap.utilities.BackgroundColorBehavior;
+import de.agilecoders.wicket.extensions.markup.html.bootstrap.spinner.SpinnerAjaxButton;
+import de.agilecoders.wicket.extensions.wizard.BootstrapWizard;
-public class InstallWizard extends AbstractWizard<InstallationConfig> {
+public class InstallWizard extends BootstrapWizard {
private static final long serialVersionUID = 1L;
private static final Logger log = LoggerFactory.getLogger(InstallWizard.class);
- private final IDynamicWizardStep welcomeStep;
- private final IDynamicWizardStep dbStep;
- private final ParamsStep1 paramsStep1;
- private final IDynamicWizardStep paramsStep2;
- private final IDynamicWizardStep paramsStep3;
- private final IDynamicWizardStep paramsStep4;
- private final InstallStep installStep;
+ private IDynamicWizardStep welcomeStep;
+ private IDynamicWizardStep dbStep;
+ private ParamsStep1 paramsStep1;
+ private IDynamicWizardStep paramsStep2;
+ private IDynamicWizardStep paramsStep3;
+ private IDynamicWizardStep paramsStep4;
+ private InstallStep installStep;
private Throwable th = null;
private DbType initDbType = null;
private DbType dbType = null;
+ private NotificationPanel feedback;
+ private final CompoundPropertyModel<InstallationConfig> model;
+ private final List<Button> buttons = new ArrayList<>(4);
+
@SpringBean
private ImportInitvalues initvalues;
//onInit, applyState
public InstallWizard(String id, String title) {
- super(id, title, new CompoundPropertyModel<>(new InstallationConfig()), true);
- setTitle(Model.of(getModelObject().getAppName()));
+ super(id);
+ setOutputMarkupPlaceholderTag(true);
+ setOutputMarkupId(true);
+ model = new CompoundPropertyModel<>(new InstallationConfig());
+ setDefaultModel(model);
+ }
+
+ @Override
+ protected void onInitialize() {
welcomeStep = new WelcomeStep();
dbStep = new DbStep();
paramsStep1 = new ParamsStep1();
@@ -121,11 +142,12 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
paramsStep3 = new ParamsStep3();
paramsStep4 = new ParamsStep4();
installStep = new InstallStep();
-
DynamicWizardModel wmodel = new DynamicWizardModel(welcomeStep);
wmodel.setCancelVisible(false);
wmodel.setLastVisible(true);
init(wmodel);
+
+ super.onInitialize();
}
public void initTzDropDown() {
@@ -133,32 +155,73 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
}
@Override
- public void onConfigure(JQueryBehavior behavior) {
- super.onConfigure(behavior);
- behavior.setOption("closeOnEscape", false);
- behavior.setOption("classes", "{'ui-dialog-titlebar': 'ui-corner-all no-close'}");
- }
-
- @Override
- public boolean isResizable() {
- return false;
- }
-
- @Override
protected WebMarkupContainer newFeedbackPanel(String id) {
- NotificationPanel feedback = new NotificationPanel("feedback");
+ feedback = (NotificationPanel)super.newFeedbackPanel(id);
feedback.setEscapeModelStrings(false).setOutputMarkupId(true);
return feedback;
}
@Override
- public int getWidth() {
- return 1000;
- }
+ protected Component newButtonBar(String id) {
+ return new WizardButtonBar(id, this) {
+ private static final long serialVersionUID = 1L;
- @Override
- protected boolean closeOnFinish() {
- return false;
+ @Override
+ protected WizardButton newCancelButton(String id, IWizard wizard) {
+ WizardButton button = super.newCancelButton(id, wizard);
+ button.add(new ButtonBehavior(Type.Outline_Warning, Buttons.Size.Medium));
+ return button;
+ }
+
+ @Override
+ protected WizardButton newFinishButton(String id, IWizard wizard) {
+ WizardButton button = super.newFinishButton(id, wizard);
+ button.add(new ButtonBehavior(Type.Outline_Success, Buttons.Size.Medium));
+ button.add(new AjaxFormSubmitBehavior("click") {
+ private static final long serialVersionUID = 1L;
+
+
+ @Override
+ protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
+ super.updateAjaxAttributes(attributes);
+
+ // do not allow normal form submit to happen
+ attributes.setPreventDefault(true);
+ }
+
+ @Override
+ protected void onSubmit(AjaxRequestTarget target) {
+ button.onSubmit();
+ }
+ });
+ buttons.add(button);
+ return button;
+ }
+
+ @Override
+ protected WizardButton newLastButton(String id, IWizard wizard) {
+ WizardButton button = super.newLastButton(id, wizard);
+ button.add(new ButtonBehavior(Type.Outline_Secondary, Buttons.Size.Medium));
+ buttons.add(button);
+ return button;
+ }
+
+ @Override
+ protected WizardButton newNextButton(String id, IWizard wizard) {
+ WizardButton button = super.newNextButton(id, wizard);
+ button.add(new ButtonBehavior(Type.Outline_Secondary, Buttons.Size.Medium));
+ buttons.add(button);
+ return button;
+ }
+
+ @Override
+ protected WizardButton newPreviousButton(String id, IWizard wizard) {
+ WizardButton button = super.newPreviousButton(id, wizard);
+ button.add(new ButtonBehavior(Type.Outline_Secondary, Buttons.Size.Medium));
+ buttons.add(button);
+ return button;
+ }
+ };
}
private abstract class BaseStep extends DynamicWizardStep {
@@ -166,13 +229,13 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
public BaseStep(IDynamicWizardStep prev) {
super(prev);
- setSummaryModel(Model.of(""));
}
@Override
protected void onInitialize() {
super.onInitialize();
- InstallWizard.this.setTitle(Model.of(getModelObject().getAppName() + " - " + getString("install.wizard.install.header")));
+ setSummaryModel(Model.of(""));
+ setTitleModel(Model.of(model.getObject().getAppName() + " - " + getString("install.wizard.install.header")));
}
}
@@ -231,22 +294,22 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
@Override
protected void onUpdate(AjaxRequestTarget target) {
- target.add(getFeedbackPanel());
+ target.add(feedback);
initForm(true, target);
}
}));
add(host, port, dbname, user, pass);
- add(new IndicatingAjaxButton("check") {
+ add(new SpinnerAjaxButton("check", new ResourceModel("install.wizard.db.step.check"), Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit(AjaxRequestTarget target) {
- target.add(getFeedbackPanel());
+ target.add(feedback);
}
@Override
protected void onError(AjaxRequestTarget target) {
- target.add(getFeedbackPanel());
+ target.add(feedback);
}
});
}
@@ -319,9 +382,6 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
public DbStep() {
super(welcomeStep);
- add(form.setOutputMarkupId(true));
- initDbType = form.getModelObject().getDbType();
- initForm(false, null);
}
private ConnectionProperties getProps(DbType type) {
@@ -393,7 +453,10 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
@Override
protected void onInitialize() {
super.onInitialize();
- add(new OmLabel("note", "install.wizard.db.step.note", getModelObject().getAppName(), getString("install.wizard.db.step.instructions.h2")
+ add(form.setOutputMarkupId(true));
+ initDbType = form.getModelObject().getDbType();
+ initForm(false, null);
+ add(new OmLabel("note", "install.wizard.db.step.note", model.getObject().getAppName(), getString("install.wizard.db.step.instructions.h2")
, getString("install.wizard.db.step.instructions.mysql"), getString("install.wizard.db.step.instructions.postgresql")
, getString("install.wizard.db.step.instructions.db2"), getString("install.wizard.db.step.instructions.mssql")
, getString("install.wizard.db.step.instructions.oracle")).setEscapeModelStrings(false));
@@ -412,16 +475,16 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
private final class ParamsStep1 extends BaseStep {
private static final long serialVersionUID = 1L;
- private final TzDropDown tzDropDown;
+ private final TzDropDown tzDropDown = new TzDropDown("timeZone");
public ParamsStep1() {
super(dbStep);
- add(tzDropDown = new TzDropDown("timeZone"));
}
@Override
protected void onInitialize() {
super.onInitialize();
+ add(tzDropDown);
add(new RequiredTextField<String>("username").setLabel(new ResourceModel("install.wizard.params.step1.username")).add(minimumLength(USER_LOGIN_MINIMUM_LENGTH)));
add(new PasswordTextField("password")
.setResetPassword(false).setLabel(new ResourceModel("install.wizard.params.step1.password"))
@@ -456,6 +519,11 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
public ParamsStep2() {
super(paramsStep1);
+ }
+
+ @Override
+ protected void onInitialize() {
+ super.onInitialize();
add(new CheckBox("allowFrontendRegister"));
add(new CheckBox("sendEmailAtRegister"));
add(new CheckBox("sendEmailWithVerficationCode"));
@@ -509,40 +577,40 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
add(officePath.setLabel(new ResourceModel("install.wizard.params.step3.officePath")));
add(new TextField<Integer>("docDpi").setRequired(true).add(range(50, 600)));
add(new TextField<Integer>("docQuality").setRequired(true).add(range(1, 100)));
- add(new AjaxButton("validateImageMagic") {
+ add(new BootstrapAjaxButton("validateImageMagic", new ResourceModel("install.wizard.db.step.check"), Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit(AjaxRequestTarget target) {
checkMagicPath();
- target.add(getFeedbackPanel());
+ target.add(feedback);
}
});
- add(new AjaxButton("validateFfmpeg") {
+ add(new BootstrapAjaxButton("validateFfmpeg", new ResourceModel("install.wizard.db.step.check"), Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit(AjaxRequestTarget target) {
checkFfmpegPath();
- target.add(getFeedbackPanel());
+ target.add(feedback);
}
});
- add(new AjaxButton("validateSox") {
+ add(new BootstrapAjaxButton("validateSox", new ResourceModel("install.wizard.db.step.check"), Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit(AjaxRequestTarget target) {
checkSoxPath();
- target.add(getFeedbackPanel());
+ target.add(feedback);
}
});
- add(new AjaxButton("validateOffice") {
+ add(new BootstrapAjaxButton("validateOffice", new ResourceModel("install.wizard.db.step.check"), Buttons.Type.Outline_Primary) {
private static final long serialVersionUID = 1L;
@Override
protected void onSubmit(AjaxRequestTarget target) {
checkOfficePath();
- target.add(getFeedbackPanel());
+ target.add(feedback);
}
});
- add(new TooltipBehavior(".info-title"));
+ add(new TooltipBehavior(".text-info"));
}
private void reportSuccess(TextField<String> path) {
@@ -632,6 +700,11 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
public ParamsStep4() {
super(paramsStep3);
+ }
+
+ @Override
+ protected void onInitialize() {
+ super.onInitialize();
add(new RequiredTextField<String>("cryptClassName")); //Validate class
add(new CheckBox("sipEnable"));
@@ -639,7 +712,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
add(new TextField<String>("sipExtenContext"));
Options options = new Options();
options.set("content", "function () { return $(this).prop('title'); }");
- add(new TooltipBehavior(".info-title", options));
+ add(new TooltipBehavior(".text-info", options));
}
@Override
@@ -665,68 +738,72 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
private final class InstallStep extends BaseStep {
private static final long serialVersionUID = 1L;
- private final CongratulationsPanel congrat;
+ private final CongratulationsPanel congrat = new CongratulationsPanel("status");
private final WebMarkupContainer container = new WebMarkupContainer("container");
- private final AbstractAjaxTimerBehavior timer;
- private final ProgressBar progressBar;
- private final Label desc = new Label("desc", "");
- private boolean started = false;
-
- public InstallStep() {
- super(paramsStep4);
+ private final UpdatableProgressBar progressBar = new UpdatableProgressBar("progress", new Model<>(0), BackgroundColorBehavior.Color.Info, true) {
+ private static final long serialVersionUID = 1L;
- // Timer //
- container.add(timer = new AbstractAjaxTimerBehavior(Duration.ofSeconds(1)) {
- private static final long serialVersionUID = 1L;
+ @Override
+ protected IModel<Integer> newValue() {
+ return Model.of(initvalues.getProgress());
+ }
- @Override
- protected void onTimer(AjaxRequestTarget target) {
- if (!started) {
- timer.stop(target);
- return;
- }
- if (th != null) {
- timer.stop(target);
- progressBar.setVisible(false);
- target.add(container.replace(new ErrorMessagePanel("status", getString("install.wizard.install.failed"), th))
- , desc.setVisible(false)
- );
- } else {
- progressBar.setModelObject(initvalues.getProgress());
- progressBar.refresh(target);
- }
+ @Override
+ protected void onPostProcessTarget(IPartialPageRequestHandler target) {
+ if (!started) {
+ stop(target);
+ return;
}
- });
- container.add(progressBar = new ProgressBar("progress", new Model<>(0)) {
- private static final long serialVersionUID = 1L;
-
- @Override
- protected void onComplete(AjaxRequestTarget target) {
- timer.stop(target);
+ if (th != null) {
+ stop(target);
progressBar.setVisible(false);
- congrat.show(initDbType != dbType);
- target.add(container, desc.setVisible(false));
+ target.add(container.replace(new ErrorMessagePanel("status", getString("install.wizard.install.failed"), th))
+ , desc.setVisible(false)
+ );
+ } else {
+ //onComplete(target);
}
- });
+ super.onPostProcessTarget(target);
+ }
- container.add(congrat = new CongratulationsPanel("status"));
- congrat.setVisible(false);
+ @Override
+ protected void onComplete(IPartialPageRequestHandler target) {
+ stop(target);
+ progressBar.setVisible(false);
+ congrat.show(initDbType != dbType);
+ target.add(container, desc.setVisible(false));
+ }
+ };
+ private final Label desc = new Label("desc", "");
+ private boolean started = false;
- add(container.setOutputMarkupId(true));
+ public InstallStep() {
+ super(paramsStep4);
}
- public void startInstallation(AjaxRequestTarget target) {
+ @Override
+ public void applyState() {
started = true;
- timer.restart(target);
new Thread(new InstallProcess(initvalues)
, "Openmeetings - Installation").start();
desc.setDefaultModelObject(getString("install.wizard.install.started"));
- target.add(desc, container);
+ RequestCycle.get().find(AjaxRequestTarget.class).ifPresent(target -> {
+ progressBar.restart(target).setModelObject(0);
+ buttons.forEach(b -> {
+ target.add(b.setEnabled(false));
+ });
+ target.add(desc, container);
+ });
}
@Override
protected void onInitialize() {
super.onInitialize();
+ progressBar.updateInterval(Duration.ofSeconds(1)).stop(null).striped(false).setOutputMarkupId(true);
+ container.add(progressBar, congrat);
+ congrat.setVisible(false);
+
+ add(container.setOutputMarkupId(true));
desc.setDefaultModelObject(getString("install.wizard.install.desc"));
add(desc.setOutputMarkupId(true));
}
@@ -753,7 +830,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
@Override
public void run() {
try {
- installer.loadAll(getModelObject(), true);
+ installer.loadAll(model.getObject(), true);
} catch (Exception e) {
th = e;
}
@@ -779,7 +856,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
WizardDropDown(String id) {
super(id);
- propModel = ((CompoundPropertyModel<InstallationConfig>)InstallWizard.this.getModel()).bind(id);
+ propModel = model.bind(id);
setModel(new PropertyModel<T>(this, "option"));
}
@@ -856,7 +933,7 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
option = op;
}
list.add(op);
- if (option == null && me.getKey().intValue() == InstallWizard.this.getModelObject().getDefaultLangId()) {
+ if (option == null && me.getKey().intValue() == model.getObject().getDefaultLangId()) {
option = op;
}
}
@@ -865,10 +942,8 @@ public class InstallWizard extends AbstractWizard<InstallationConfig> {
}
@Override
- protected void onFinish(AjaxRequestTarget target) {
- for (DialogButton b : getButtons()) {
- b.setEnabled(false, target);
- }
- installStep.startInstallation(target);
+ protected void onDetach() {
+ model.detach();
+ super.onDetach();
}
}
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.html b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.html
index da2f711..04314da 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.html
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.html
@@ -21,7 +21,7 @@
<!DOCTYPE html>
<html xmlns:wicket="http://wicket.apache.org">
<wicket:extend>
- <div>
+ <div class="container installer">
<div wicket:id="wizard"></div>
</div>
</wicket:extend>
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java
index 84ee31e..4a87fa0 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/install/InstallWizardPage.java
@@ -27,13 +27,18 @@ import org.apache.wicket.protocol.http.request.WebClientInfo;
public class InstallWizardPage extends BaseNotInitedPage {
private static final long serialVersionUID = 1L;
- private final InstallWizard wizard;
public InstallWizardPage() {
if (Application.isInstalled()) {
throw new RestartResponseException(Application.get().getHomePage());
}
- add(wizard = new InstallWizard("wizard", getString("install.wizard.install.header")));
+ }
+
+ @Override
+ protected void onInitialize() {
+ super.onInitialize();
+ final InstallWizard wizard = new InstallWizard("wizard", getString("install.wizard.install.header"));
+ add(wizard.setEnabled(false));
// This code is required to detect time zone offset
add(new AjaxClientInfoBehavior() {
private static final long serialVersionUID = 1L;
@@ -42,7 +47,7 @@ public class InstallWizardPage extends BaseNotInitedPage {
protected void onClientInfo(AjaxRequestTarget target, WebClientInfo clientInfo) {
super.onClientInfo(target, clientInfo);
wizard.initTzDropDown();
- wizard.open(target);
+ target.add(wizard.setEnabled(true));
}
});
}
diff --git a/openmeetings-web/src/main/webapp/css/raw-admin.css b/openmeetings-web/src/main/webapp/css/raw-admin.css
index 91c6d2a..5f7e222 100644
--- a/openmeetings-web/src/main/webapp/css/raw-admin.css
+++ b/openmeetings-web/src/main/webapp/css/raw-admin.css
@@ -45,7 +45,7 @@
vertical-align: top;
overflow-y: auto;
}
-.adminForm legend {
+.adminForm legend, .installer legend {
padding: 0.2em 0.5em;
margin: 0px 10px;
font-style: italic;
diff --git a/openmeetings-web/src/main/webapp/css/raw-general.css b/openmeetings-web/src/main/webapp/css/raw-general.css
index a4ed5a5..34d8045 100644
--- a/openmeetings-web/src/main/webapp/css/raw-general.css
+++ b/openmeetings-web/src/main/webapp/css/raw-general.css
@@ -762,3 +762,7 @@ select.messages.selector {
.popover.confirmation.show {
z-index: 3000; /* FIXME TODO move this to variables */
}
+.installer {
+ overflow-y: auto;
+ height: calc(100% - var(--header-height));
+}
diff --git a/pom.xml b/pom.xml
index a12fe02..6784ff9 100644
--- a/pom.xml
+++ b/pom.xml
@@ -75,7 +75,7 @@
<forbiddenapis.version>2.7</forbiddenapis.version>
<!-- dependency versions -->
<junit.version>5.6.1</junit.version>
- <wicket.version>9.0.0-M5-SNAPSHOT</wicket.version>
+ <wicket.version>9.0.0-M5</wicket.version>
<wicketju.version>9.0.0-M4</wicketju.version>
<wickets.version>9.0.0-M5-SNAPSHOT</wickets.version>
<wicket-bootstrap.version>5.0.0-M1</wicket-bootstrap.version>