Revision: 4597
Author:   solomax666
Date:     Sun Nov 20 08:37:52 2011
Log: - code for taking into account browser language is added to language selector is added
http://code.google.com/p/openmeetings/source/detail?r=4597

Added:
/trunk/singlewebapp/lib/svntask-1.0.8/svnkit-1.7.0-20111018.133417-97.jar.bak
Modified:
 /trunk/singlewebapp/WebContent/languages/arabic.xml
 /trunk/singlewebapp/WebContent/languages/bulgarian.xml
 /trunk/singlewebapp/WebContent/languages/catalan.xml
 /trunk/singlewebapp/WebContent/languages/chinese simplified.xml
 /trunk/singlewebapp/WebContent/languages/chinese traditional.xml
 /trunk/singlewebapp/WebContent/languages/czech.xml
 /trunk/singlewebapp/WebContent/languages/danish.xml
 /trunk/singlewebapp/WebContent/languages/deutsch (studIP).xml
 /trunk/singlewebapp/WebContent/languages/deutsch.xml
 /trunk/singlewebapp/WebContent/languages/dutch.xml
 /trunk/singlewebapp/WebContent/languages/english.xml
 /trunk/singlewebapp/WebContent/languages/finnish.xml
 /trunk/singlewebapp/WebContent/languages/french.xml
 /trunk/singlewebapp/WebContent/languages/galician.xml
 /trunk/singlewebapp/WebContent/languages/greek.xml
 /trunk/singlewebapp/WebContent/languages/hebrew.xml
 /trunk/singlewebapp/WebContent/languages/hungarian.xml
 /trunk/singlewebapp/WebContent/languages/indonesian.xml
 /trunk/singlewebapp/WebContent/languages/italian.xml
 /trunk/singlewebapp/WebContent/languages/japanese.xml
 /trunk/singlewebapp/WebContent/languages/korean.xml
 /trunk/singlewebapp/WebContent/languages/languages.xml
 /trunk/singlewebapp/WebContent/languages/persian.xml
 /trunk/singlewebapp/WebContent/languages/polish.xml
 /trunk/singlewebapp/WebContent/languages/portugues brazil.xml
 /trunk/singlewebapp/WebContent/languages/portugues.xml
 /trunk/singlewebapp/WebContent/languages/russian.xml
 /trunk/singlewebapp/WebContent/languages/slovak.xml
 /trunk/singlewebapp/WebContent/languages/spanish.xml
 /trunk/singlewebapp/WebContent/languages/swedish.xml
 /trunk/singlewebapp/WebContent/languages/thai.xml
 /trunk/singlewebapp/WebContent/languages/turkish.xml
 /trunk/singlewebapp/WebContent/languages/ukrainian.xml
 /trunk/singlewebapp/WebContent/src/base/auth/checkLoginData.lzx
 /trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx
/trunk/singlewebapp/WebContent/src/modules/admin/languageseditor/addLanguage.lzx
 /trunk/singlewebapp/build.xml
/trunk/singlewebapp/src/app/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java /trunk/singlewebapp/src/app/org/openmeetings/app/installation/ImportInitvalues.java /trunk/singlewebapp/src/app/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java /trunk/singlewebapp/src/app/org/openmeetings/app/remote/LanguageService.java /trunk/singlewebapp/src/app/org/openmeetings/servlet/outputhandler/Install.java
 /trunk/singlewebapp/src/templates/install_welcome_EN.vm

=======================================
--- /dev/null   
+++ /trunk/singlewebapp/lib/svntask-1.0.8/svnkit-1.7.0-20111018.133417-97.jar.bak Sun Nov 20 08:37:52 2011
File is too large to display a diff.
=======================================
--- /trunk/singlewebapp/WebContent/languages/arabic.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/arabic.xml Sun Nov 20 08:37:52 2011
@@ -4270,4 +4270,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/bulgarian.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/bulgarian.xml Sun Nov 20 08:37:52 2011
@@ -4268,4 +4268,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/catalan.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/catalan.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/chinese simplified.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/chinese simplified.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/chinese traditional.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/chinese traditional.xml Sun Nov 20 08:37:52 2011
@@ -4275,4 +4275,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/czech.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/czech.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/danish.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/danish.xml Sun Nov 20 08:37:52 2011
@@ -4268,4 +4268,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/deutsch (studIP).xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/deutsch (studIP).xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/deutsch.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/deutsch.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/dutch.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/dutch.xml Sun Nov 20 08:37:52 2011
@@ -4265,4 +4265,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/english.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/english.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/finnish.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/finnish.xml Sun Nov 20 08:37:52 2011
@@ -4268,4 +4268,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/french.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/french.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/galician.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/galician.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/greek.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/greek.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/hebrew.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/hebrew.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/hungarian.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/hungarian.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/indonesian.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/indonesian.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/italian.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/italian.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/japanese.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/japanese.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/korean.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/korean.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/languages.xml Tue Oct 19 22:08:52 2010 +++ /trunk/singlewebapp/WebContent/languages/languages.xml Sun Nov 20 08:37:52 2011
@@ -1,35 +1,35 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <language>
-       <lang id="1" rightToLeft="false">english</lang>
-       <lang id="2" rightToLeft="false">deutsch</lang>
-       <lang id="3" rightToLeft="false">deutsch (studIP)</lang>
-       <lang id="4" rightToLeft="false">french</lang>
-       <lang id="5" rightToLeft="false">italian</lang>
-       <lang id="6" rightToLeft="false">portugues</lang>
-       <lang id="7" rightToLeft="false">portugues brazil</lang>
-       <lang id="8" rightToLeft="false">spanish</lang>
-       <lang id="9" rightToLeft="false">russian</lang>
-       <lang id="10" rightToLeft="false">swedish</lang>
-       <lang id="11" rightToLeft="false">chinese simplified</lang>
-       <lang id="12" rightToLeft="false">chinese traditional</lang>
-       <lang id="13" rightToLeft="false">korean</lang>
-       <lang id="14" rightToLeft="true">arabic</lang>
-       <lang id="15" rightToLeft="false">japanese</lang>
-       <lang id="16" rightToLeft="false">indonesian</lang>
-       <lang id="17" rightToLeft="false">hungarian</lang>
-    <lang id="18" rightToLeft="false">turkish</lang>
-    <lang id="19" rightToLeft="false">ukrainian</lang>
-    <lang id="20" rightToLeft="false">thai</lang>
-    <lang id="21" rightToLeft="false">persian</lang>
-    <lang id="22" rightToLeft="false">czech</lang>
-    <lang id="23" rightToLeft="false">galician</lang>
-    <lang id="24" rightToLeft="false">finnish</lang>
-    <lang id="25" rightToLeft="false">polish</lang>
-    <lang id="26" rightToLeft="false">greek</lang>
-    <lang id="27" rightToLeft="false">dutch</lang>
-    <lang id="28" rightToLeft="true">hebrew</lang>
-    <lang id="29" rightToLeft="false">catalan</lang>
-    <lang id="30" rightToLeft="false">bulgarian</lang>
-    <lang id="31" rightToLeft="false">danish</lang>
-    <lang id="32" rightToLeft="false">slovak</lang>
+       <lang id="1" rightToLeft="false" code="en">english</lang>
+       <lang id="2" rightToLeft="false" code="de">deutsch</lang>
+       <lang id="3" rightToLeft="false" code="de">deutsch (studIP)</lang>
+       <lang id="4" rightToLeft="false" code="fr">french</lang>
+       <lang id="5" rightToLeft="false" code="it">italian</lang>
+       <lang id="6" rightToLeft="false" code="pt">portugues</lang>
+       <lang id="7" rightToLeft="false" code="pt-br">portugues brazil</lang>
+       <lang id="8" rightToLeft="false" code="es">spanish</lang>
+       <lang id="9" rightToLeft="false" code="ru">russian</lang>
+       <lang id="10" rightToLeft="false" code="sv">swedish</lang>
+       <lang id="11" rightToLeft="false" code="zh-CN">chinese simplified</lang>
+       <lang id="12" rightToLeft="false" code="zh-TW">chinese 
traditional</lang>
+       <lang id="13" rightToLeft="false" code="ko">korean</lang>
+       <lang id="14" rightToLeft="true" code="ar">arabic</lang>
+       <lang id="15" rightToLeft="false" code="ja">japanese</lang>
+       <lang id="16" rightToLeft="false" code="id">indonesian</lang>
+       <lang id="17" rightToLeft="false" code="hu">hungarian</lang>
+    <lang id="18" rightToLeft="false" code="tr">turkish</lang>
+    <lang id="19" rightToLeft="false" code="uk">ukrainian</lang>
+    <lang id="20" rightToLeft="false" code="th">thai</lang>
+    <lang id="21" rightToLeft="false" code="fa">persian</lang>
+    <lang id="22" rightToLeft="false" code="cs">czech</lang>
+    <lang id="23" rightToLeft="false" code="gl">galician</lang>
+    <lang id="24" rightToLeft="false" code="fi">finnish</lang>
+    <lang id="25" rightToLeft="false" code="pl">polish</lang>
+    <lang id="26" rightToLeft="false" code="el">greek</lang>
+    <lang id="27" rightToLeft="false" code="nl">dutch</lang>
+    <lang id="28" rightToLeft="true" code="he">hebrew</lang>
+    <lang id="29" rightToLeft="false" code="ca">catalan</lang>
+    <lang id="30" rightToLeft="false" code="bg">bulgarian</lang>
+    <lang id="31" rightToLeft="false" code="da">danish</lang>
+    <lang id="32" rightToLeft="false" code="sk">slovak</lang>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/persian.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/persian.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/polish.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/polish.xml Sun Nov 20 08:37:52 2011
@@ -4342,4 +4342,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/portugues brazil.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/portugues brazil.xml Sun Nov 20 08:37:52 2011
@@ -4275,4 +4275,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/portugues.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/portugues.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/russian.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/russian.xml Sun Nov 20 08:37:52 2011
@@ -4275,4 +4275,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/slovak.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/slovak.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/spanish.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/spanish.xml Sun Nov 20 08:37:52 2011
@@ -4277,4 +4277,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/swedish.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/swedish.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/thai.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/thai.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/turkish.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/turkish.xml Sun Nov 20 08:37:52 2011
@@ -4268,4 +4268,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/languages/ukrainian.xml Sat Nov 19 12:16:05 2011 +++ /trunk/singlewebapp/WebContent/languages/ukrainian.xml Sun Nov 20 08:37:52 2011
@@ -4269,4 +4269,7 @@
   <string id="1421" name="poll_delete_confirm">
<value>Are you sure you want to delete this Poll? The results will be deleted as well.</value>
   </string>
+  <string id="1422" name="language_code">
+    <value>Language ISO Code</value>
+  </string>
 </language>
=======================================
--- /trunk/singlewebapp/WebContent/src/base/auth/checkLoginData.lzx Wed Nov 16 06:36:51 2011 +++ /trunk/singlewebapp/WebContent/src/base/auth/checkLoginData.lzx Sun Nov 20 08:37:52 2011
@@ -20,6 +20,8 @@
     </handler>

     <handler name="oninit">
+       canvas.thishib.setDefaultUserLanguage();
+
        _mainScrollBar.setAttribute("visibility","hidden");
         lz.Focus.setFocus(this.username,true);
     </handler>
@@ -283,12 +285,14 @@
             <![CDATA[
             //The onResult-Handler will be called be the rtmpconnection
                if ($debug) {
-                    Debug.write("user.lang: ",value.language_id);
-                    Debug.write("loginUser: ",value);
+                    Debug.write("user.lang: ", value.language_id);
+                    Debug.write("loginUser: ", value);
                 }

                 if (!(value<0)){
- hib.userlang = isNaN(value.language_id) ? canvas.default_lang_id : Number(value.language_id);
+                       if (!isNaN(Number(value.language_id))) {
+                       hib.userlang = Number(value.language_id);
+                    }

                     var g = canvas.getUserData();
                     if (this.parent._savelogindata.getValue()) {
=======================================
--- /trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx Wed Nov 16 06:36:51 2011 +++ /trunk/singlewebapp/WebContent/src/base/hibernate/hibRtmpConnection.lzx Sun Nov 20 08:37:52 2011
@@ -227,14 +227,65 @@
             parent.getDefaultLanguage.doCall();
         </handler>
     </netRemoteCallHib>
-
+
+       <method name="setDefaultUserLanguage">
+       <![CDATA[
+               if (userlang == -1 && canvas.language_id != 0) {
+                       userlang = canvas.language_id;
+               } else if (userlang == -1) {
+                       var lang_id = canvas.default_lang_id;
+
+ var browserLang = flash.external.ExternalInterface.call("function(){return window.navigator.systemLanguage || window.navigator.userLanguage || window.navigator.language;}");
+                       if (browserLang == null) {
+                               browserLang = "" + System.capabilities.language;
+                       }
+                       if (browserLang != null && browserLang.length > 1) {
+                               var lngCode = browserLang.substring(0, 2);
+
+                               //openlaszlo XPath is able to search nothing, 
so will iterate
+                               var xpath = "languagesSet:/item";
+                               var list = 
languagesSet.getPointer().xpathQuery(xpath);
+
+                               var partMatch = -1, fullMatch = -1;
+                               for (var i = 1; list != null && i <= 
list.length; ++i) {
+                                       xpath = "languagesSet:/item[" + i + 
"]/code/text()";
+                                       var val = 
languagesSet.getPointer().xpathQuery(xpath);
+                                       if (val != null && val.length > 1) {
+                                               var partCode = ("" + 
val).substring(0, 2);
+
+                                               if (browserLang == val) {
+                                                       fullMatch = i;
+                                               } else if (lngCode == val) {
+                                                       partMatch = i;
+                                               } else if (partCode == lngCode) 
{
+                                                       partMatch = i;
+                                               }
+                                       }
+                               }
+                               if (partMatch != -1 || fullMatch != -1) {
+                                       i = (fullMatch != -1) ? fullMatch : 
partMatch;
+                                       xpath = "languagesSet:/item[" + i + 
"]/language_id/text()";
+                                       lang_id = 
languagesSet.getPointer().xpathQuery(xpath);
+                               }
+                       }
+
+            if (canvas.language_id == 0) {
+               userlang = lang_id;
+            } else {
+               userlang = canvas.language_id;
+            }
+               }
+       ]]>
+       </method>
+
     <netRemoteCallHib name="logoutUser" funcname="xmlcrm.logoutUser"
         remotecontext="$once{ canvas.thishib }" activeErrorHandler="true"
         isCallBackHandler="true">
<netparam><method name="getValue">return canvas.sessionId;</method></netparam>
         <handler name="sendCallBack">
+        <![CDATA[
             //The onResult-Handler will be called be the rtmpconnection
-            if ($debug) Debug.write("sendCallBack logoutUser: ",value);
+            if ($debug) Debug.write("sendCallBack logoutUser: ");
             parent.initlanguageLoaded = false;

             var g = canvas.getUserData();
@@ -248,9 +299,12 @@
             canvas.setUserData(g);
             canvas.setColorStyle(canvas.baseColorScheme);

-            parent.userlang = canvas.default_lang_id;
+            parent.userlang = -1;
+            setDefaultUserLanguage();
+
                parent.getLanguageByIdAndMax.start = 0;
                parent.getLanguageByIdAndMax.doCall();
+        ]]>
         </handler>
     </netRemoteCallHib>

@@ -273,11 +327,7 @@
             //The onResult-Handler will be called be the rtmpconnection
             canvas.default_lang_id = value;
if ($debug) Debug.write("getDefaultLanguage: ",value,"; canvas.lang = ", canvas.language_id);
-            if (canvas.language_id==0){
-               parent.userlang = canvas.default_lang_id;
-            } else {
-               parent.userlang = canvas.language_id;
-            }
+            setDefaultUserLanguage();
             parent.getLanguageByIdAndMax.doCall();
         </handler>
     </netRemoteCallHib>
=======================================
--- /trunk/singlewebapp/WebContent/src/modules/admin/languageseditor/addLanguage.lzx Mon Oct 12 03:58:23 2009 +++ /trunk/singlewebapp/WebContent/src/modules/admin/languageseditor/addLanguage.lzx Sun Nov 20 08:37:52 2011
@@ -26,6 +26,7 @@
                <attribute name="tempValue" value="0" type="number" />
<netparam><method name="getValue"> return canvas.sessionId;</method></netparam> <netparam><method name="getValue"> return parent.parent.langName.getText();</method></netparam> + <netparam><method name="getValue"> return parent.parent.langCode.getText();</method></netparam>
         <handler name="ondata" args="value">
             //The onResult-Handler will be called be the rtmpconnection
                        if($debug) Debug.write(value);
@@ -38,6 +39,10 @@
     <labelText labelid="365" width="200" y="54" x="2"/>
         <customEdittext name="langName" y="54" x="140" width="170" />

+    <!-- 1422:Code -->
+    <labelText labelid="1422" width="200" y="74" x="2"/>
+        <customEdittext name="langCode" y="74" x="140" width="170" />
+
        <!-- 366:add language  -->
     <simpleLabelButton name="_btn" labelid="366" width="120" x="230"
                y="$once{ parent.height-40 }" onclick="parent.sendValues()" />
=======================================
--- /trunk/singlewebapp/build.xml       Fri Nov 18 11:51:21 2011
+++ /trunk/singlewebapp/build.xml       Sun Nov 20 08:37:52 2011
@@ -498,7 +498,7 @@
                </java>
        </target>

-       <target name="compile" depends="prepare, resources, compile.only"/>
+       <target name="compile" depends="prepare, compile.only"/>

        <!-- Normal build of application
     compiler="org.eclipse.jdt.core.JDTCompilerAdapter" -->
@@ -534,7 +534,7 @@
                </javac>
        </target>

-       <target name="compile.screen.share" depends="prepare.mkdir">
+ <target name="compile.screen.share" depends="clean.classes, prepare.mkdir, resources">
                <echo message="Compile screen share to ${screen.out.dir}" />
                <!-- compile screen share -->
<javac debug="on" debuglevel="lines,vars,source" srcdir="${screen.src.dir}" destdir="${screen.out.dir}" >
@@ -560,10 +560,13 @@
        <!-- Remove classes directory for clean build -->
<target name="clean" depends="cleanForBinary" description="Prepare for clean build" />

-       <target name="cleanForBinary" description="Clean For Binary">
+       <target name="clean.classes" description="Clean Classes">
+               <delete dir="${main.out.dir}"/>
+       </target>
+
+ <target name="cleanForBinary" depends="clean.classes" description="Clean For Binary">
                <delete dir="${dist.dir}"/>
                <delete dir="${screen.out.dir}"/>
-               <delete dir="${main.out.dir}"/>
                <delete dir="${report.dir}"/>
                <delete dir="${derbydb.dir}" />
                <delete dir="${basedir}/log" />
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java Tue Aug 30 13:17:16 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/data/basic/FieldLanguageDaoImpl.java Sun Nov 20 08:37:52 2011
@@ -28,7 +28,7 @@
        @PersistenceContext
        private EntityManager em;

-       public Long addLanguage(String langName, Boolean langRtl) {
+       public Long addLanguage(String langName, Boolean langRtl, String code) {
                try {

                        FieldLanguage fl = new FieldLanguage();
@@ -36,6 +36,7 @@
                        fl.setDeleted("false");
                        fl.setName(langName);
                        fl.setRtl(langRtl);
+                       fl.setCode(code);

                        fl = em.merge(fl);
                        Long languages_id = fl.getLanguage_id();
@@ -58,12 +59,14 @@
        }

        public Long updateFieldLanguage(Long language_id, String langName,
-                       String deleted) {
+                       String code, String deleted) {
                try {
                        FieldLanguage fl = 
this.getFieldLanguageById(language_id);
                        fl.setUpdatetime(new Date());
                        if (langName.length() > 0)
                                fl.setName(langName);
+                       if (code.length() > 0)
+                               fl.setCode(code);
                        fl.setDeleted(deleted);
                        this.updateLanguage(fl);
                        return language_id;
@@ -109,6 +112,7 @@
                                        + "WHERE c.deleted <> :deleted ";
                        Query query = em.createQuery(hql);
                        query.setParameter("deleted", "true");
+                       @SuppressWarnings("unchecked")
                        List<FieldLanguage> ll = query.getResultList();
                        return ll;
                } catch (Exception ex2) {
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/installation/ImportInitvalues.java Thu Nov 17 06:58:06 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/installation/ImportInitvalues.java Sun Nov 20 08:37:52 2011
@@ -689,16 +689,18 @@
                                        .intValue();

                        String rtl = item.attribute("rightToLeft").getValue();
+                       String code = item.attribute("code").getValue();

LinkedHashMap<String, Object> lang = new LinkedHashMap<String, Object>();
                        lang.put("id", id);
                        lang.put("name", country);
                        lang.put("rtl", rtl);
+                       lang.put("code", code);
                        // log.error("getLanguageFiles "+country);
                        languages.put(id, lang);

                }
-               log.debug("Countries ADDED ");
+               log.debug("Languages ADDED ");
                return languages;

        }
@@ -770,6 +772,7 @@

                        String langName = (String) lang.get("name");
                        String rtl = (String) lang.get("rtl");
+                       String code = (String) lang.get("code");

                        System.out.println("loadInitLanguages rtl from xml: " + 
rtl);

@@ -779,7 +782,7 @@
                                langRtl = true;

                        Long languages_id = 
fieldLanguageDaoImpl.addLanguage(langName,
-                                       langRtl);
+                                       langRtl, code);

                        SAXReader reader = new SAXReader();
                        Document document = reader.read(filePath + langName + 
".xml");
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java Sat Jul 23 04:28:08 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/persistence/beans/lang/FieldLanguage.java Sun Nov 20 08:37:52 2011
@@ -30,9 +30,10 @@
        private String deleted;
        @Column(name="rtl")
        private Boolean rtl;
+       @Column(name="code")
+       private String code;

     public FieldLanguage() {
-               super();
        }

        public Long getLanguage_id() {
@@ -77,7 +78,10 @@
                this.rtl = rtl;
        }

-
-
-
-}
+       public String getCode() {
+               return code;
+       }
+       public void setCode(String code) {
+               this.code = code;
+       }
+}
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/app/remote/LanguageService.java Tue Aug 30 13:17:16 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/app/remote/LanguageService.java Sun Nov 20 08:37:52 2011
@@ -90,25 +90,25 @@
                return null;
        }

-       public Long addLanguage(String SID, String langName) {
+       public Long addLanguage(String SID, String langName, String code) {
                Long users_id = sessionManagement.checkSession(SID);
                Long user_level = userManagement.getUserLevelByID(users_id);
                if (authLevelManagement.checkAdminLevel(user_level)) {
                        if (langName.length() == 0)
                                return new Long(-30);
-                       return fieldLanguageDaoImpl.addLanguage(langName, 
false);
+                       return fieldLanguageDaoImpl.addLanguage(langName, 
false, code);
                }
                return null;
        }

- public Long updateLanguage(String SID, Long language_id, String langName) { + public Long updateLanguage(String SID, Long language_id, String langName, String code) {
                Long users_id = sessionManagement.checkSession(SID);
                Long user_level = userManagement.getUserLevelByID(users_id);
                if (authLevelManagement.checkAdminLevel(user_level)) {
                        if (langName.length() == 0)
                                return new Long(-30);
                        return 
fieldLanguageDaoImpl.updateFieldLanguage(language_id,
-                                       langName, "false");
+                                       langName, code, "false");
                }
                return null;
        }
@@ -118,7 +118,7 @@
                Long user_level = userManagement.getUserLevelByID(users_id);
                if (authLevelManagement.checkAdminLevel(user_level)) {
                        return fieldLanguageDaoImpl.updateFieldLanguage(language_id, 
"",
-                                       "true");
+                                       "", "true");
                }
                return null;
        }
=======================================
--- /trunk/singlewebapp/src/app/org/openmeetings/servlet/outputhandler/Install.java Fri Oct 21 11:33:37 2011 +++ /trunk/singlewebapp/src/app/org/openmeetings/servlet/outputhandler/Install.java Sun Nov 20 08:37:52 2011
@@ -3,7 +3,6 @@
 import java.io.File;
 import java.io.IOException;
 import java.io.StringWriter;
-import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.List;

@@ -57,6 +56,67 @@
        private static final Logger log = Red5LoggerFactory.getLogger(
                        Install.class, ScopeApplicationAdapter.webAppRootKey);

+ private Template getStep2Template(HttpServletRequest httpServletRequest, Context ctx, String lang) throws Exception {
+               String header = httpServletRequest.getHeader("Accept-Language");
+               String[] headerList = header != null ? header.split(",") : new 
String[0];
+               String headCode = headerList.length > 0 ? headerList[0] : "en";
+
+               String filePath = getServletContext().getRealPath("/")
+                               + ImportInitvalues.languageFolderName;
+ LinkedHashMap<Integer, LinkedHashMap<String, Object>> allLanguagesAll = getImportInitvalues()
+                               .getLanguageFiles(filePath);
+ LinkedHashMap<Integer, String> allLanguages = new LinkedHashMap<Integer, String>();
+               //first iteration for preferred language
+               Integer prefKey = -1;
+               String prefName = null;
+               for (Integer key : allLanguagesAll.keySet()) {
+                       String langName = (String) 
allLanguagesAll.get(key).get("name");
+                       String langCode = (String) 
allLanguagesAll.get(key).get("code");
+                       if (langCode != null) {
+                               if (headCode.equals(langCode)) {
+                                       prefKey = key;
+                                       prefName = langName;
+                                       break;
+                               } else if (headCode.startsWith(langCode)) {
+                                       prefKey = key;
+                                       prefName = langName;
+                               }
+                       }
+               }
+               allLanguages.put(prefKey, prefName);
+               for (Integer key : allLanguagesAll.keySet()) {
+                       String langName = (String) 
allLanguagesAll.get(key).get("name");
+                       if (key != prefKey) {
+                               allLanguages.put(key, langName);
+                       }
+               }
+
+ LinkedHashMap<String, String> allFonts = new LinkedHashMap<String, String>();
+               allFonts.put("TimesNewRoman", "TimesNewRoman");
+               allFonts.put("Verdana", "Verdana");
+               allFonts.put("Arial", "Arial");
+
+ LinkedHashMap<String, String> allTimeZones = new LinkedHashMap<String, String>();
+               List<OmTimeZone> omTimeZoneList = getImportInitvalues()
+                               .getTimeZones(filePath);
+               log.debug("omTimeZoneList :: " + omTimeZoneList.size());
+               for (OmTimeZone omTimeZone : omTimeZoneList) {
+                       String labelName = omTimeZone.getJname() + " ("
+                                       + omTimeZone.getLabel() + ")";
+                       log.debug("labelName :: " + labelName);
+                       allTimeZones.put(omTimeZone.getJname(), labelName);
+               }
+
+               Template tpl = super.getTemplate("install_step1_"
+                               + lang + ".vm");
+               ctx.put("allLanguages", allLanguages);
+               ctx.put("allFonts", allFonts);
+               ctx.put("allTimeZones", allTimeZones);
+               StringWriter writer = new StringWriter();
+               tpl.merge(ctx, writer);
+
+               return tpl;
+       }
        /*
         * (non-Javadoc)
         *
@@ -87,12 +147,12 @@
                                        + ScopeApplicationAdapter.configDirName
                                        + File.separatorChar;

-                       if (command == null) {
+                       File installerFile = new File(working_dir
+                                       + 
InstallationDocumentHandler.installFileName);
+
+                       if (command == null || !installerFile.exists()) {
                                log.debug("command equals null");

-                               File installerFile = new File(working_dir
-                                               + 
InstallationDocumentHandler.installFileName);
-
                                if (!installerFile.exists()) {

                                        File installerdir = new 
File(working_dir);
@@ -127,44 +187,7 @@
                                        int i = 
InstallationDocumentHandler.getInstance()
                                                        
.getCurrentStepNumber(working_dir);
                                        if (i == 0) {
-                                               String filePath = 
getServletContext().getRealPath("/")
-                                                               + 
ImportInitvalues.languageFolderName;
- LinkedHashMap<Integer, LinkedHashMap<String, Object>> allLanguagesAll = getImportInitvalues()
-                                                               
.getLanguageFiles(filePath);
- LinkedHashMap<Integer, String> allLanguages = new LinkedHashMap<Integer, String>();
-                                               for (Iterator<Integer> iter = 
allLanguagesAll.keySet()
-                                                               .iterator(); 
iter.hasNext();) {
-                                                       Integer key = 
iter.next();
-                                                       String langName = 
(String) allLanguagesAll.get(key)
-                                                                       
.get("name");
-                                                       allLanguages.put(key, 
langName);
-                                               }
-
- LinkedHashMap<String, String> allFonts = new LinkedHashMap<String, String>();
-                                               allFonts.put("TimesNewRoman", 
"TimesNewRoman");
-                                               allFonts.put("Verdana", 
"Verdana");
-                                               allFonts.put("Arial", "Arial");
-
- LinkedHashMap<String, String> allTimeZones = new LinkedHashMap<String, String>();
-                                               List<OmTimeZone> omTimeZoneList 
= getImportInitvalues()
-                                                               
.getTimeZones(filePath);
-                                               log.debug("omTimeZoneList :: " 
+ omTimeZoneList.size());
-                                               for (OmTimeZone omTimeZone : 
omTimeZoneList) {
-                                                       String labelName = 
omTimeZone.getJname() + " ("
-                                                                       + 
omTimeZone.getLabel() + ")";
-                                                       log.debug("labelName :: 
" + labelName);
-                                                       
allTimeZones.put(omTimeZone.getJname(), labelName);
-                                               }
-
-                                               Template tpl = 
super.getTemplate("install_step1_"
-                                                               + lang + ".vm");
-                                               ctx.put("allLanguages", 
allLanguages);
-                                               ctx.put("allFonts", allFonts);
-                                               ctx.put("allTimeZones", 
allTimeZones);
-                                               StringWriter writer = new 
StringWriter();
-                                               tpl.merge(ctx, writer);
-
-                                               return tpl;
+                                               return 
getStep2Template(httpServletRequest, ctx, lang);
                                        } else {
                                                return 
getVelocityView().getVelocityEngine()
                                                                
.getTemplate("install_step2_" + lang + ".vm");
@@ -176,51 +199,7 @@
                                int i = 
InstallationDocumentHandler.getInstance()
                                                
.getCurrentStepNumber(working_dir);
                                if (i == 0) {
-
-                                       log.debug("do init installation");
-
-                                       // update to next step
- // InstallationDocumentHandler.getInstance().createDocument(working_dir+InstallationDocumentHandler.installFileName,1);
-
-                                       String filePath = 
getServletContext().getRealPath("/")
-                                                       + 
ImportInitvalues.languageFolderName;
- LinkedHashMap<Integer, LinkedHashMap<String, Object>> allLanguagesAll = getImportInitvalues()
-                                                       
.getLanguageFiles(filePath);
- LinkedHashMap<Integer, String> allLanguages = new LinkedHashMap<Integer, String>();
-                                       for (Iterator<Integer> iter = 
allLanguagesAll.keySet()
-                                                       .iterator(); 
iter.hasNext();) {
-                                               Integer key = iter.next();
-                                               String langName = (String) 
allLanguagesAll.get(key)
-                                                               .get("name");
-                                               allLanguages.put(key, langName);
-                                       }
-
- LinkedHashMap<String, String> allFonts = new LinkedHashMap<String, String>();
-                                       allFonts.put("TimesNewRoman", 
"TimesNewRoman");
-                                       allFonts.put("Verdana", "Verdana");
-                                       allFonts.put("Arial", "Arial");
-
- LinkedHashMap<String, String> allTimeZones = new LinkedHashMap<String, String>();
-                                       List<OmTimeZone> omTimeZoneList = 
getImportInitvalues()
-                                                       .getTimeZones(filePath);
-                                       log.debug("omTimeZoneList :: " + 
omTimeZoneList.size());
-                                       for (OmTimeZone omTimeZone : 
omTimeZoneList) {
-                                               String labelName = omTimeZone.getJname() 
+ " ("
-                                                               + omTimeZone.getLabel() + 
")";
-                                               log.debug("labelName :: " + 
labelName);
-                                               
allTimeZones.put(omTimeZone.getJname(), labelName);
-                                       }
-
-                                       Template tpl = 
super.getTemplate("install_step1_" + lang
-                                                       + ".vm");
-                                       ctx.put("allLanguages", allLanguages);
-                                       ctx.put("allFonts", allFonts);
-                                       ctx.put("allTimeZones", allTimeZones);
-                                       StringWriter writer = new 
StringWriter();
-                                       tpl.merge(ctx, writer);
-
-                                       return tpl;
-
+                                       return 
getStep2Template(httpServletRequest, ctx, lang);
                                } else {
                                        ctx.put("error",
"This Step of the installation has already been done. continue with step 2 <A HREF='?command=step2'>continue with step 2</A>");
=======================================
--- /trunk/singlewebapp/src/templates/install_welcome_EN.vm Sun Oct 23 01:40:00 2011 +++ /trunk/singlewebapp/src/templates/install_welcome_EN.vm Sun Nov 20 08:37:52 2011
@@ -3,18 +3,18 @@
 ## 10.04.2007
 ## revised H.Kuze(minamotonoason) 2008.Apr.2
<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
-<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='de' lang='de'>
+<html xmlns='http://www.w3.org/1999/xhtml' xml:lang='en' lang='en'>
 <head>
 <meta http-equiv='Content-Type' content='text/html; charset=iso-8859-1' />
 </head>
 <body>
-<h3>Openmeetings - Installation</h3>
+<h3>$APP_NAME - Installation</h3>

 <h3><A HREF="?command=step1">Continue with STEP 1</A></h3>

 <ol><li>
<h4><a name="Recommendation_for_production_environment"></a>Recommendation for production environment<a target="_blank" href="#Recommendation_for_production_environment" class="section_anchor"></a></h4> -</li><blockquote>By default OpenMeetings uses the integrated Apache Derby database. For production environment you should consider using <a target="_blank" href="http://code.google.com/p/openmeetings/wiki/Configuration_Mysql";>MySQL</a>, <a target="_blank" href="http://code.google.com/p/openmeetings/wiki/Configuration_Postgres";>Postgres</a> or for example <a href="http://code.google.com/p/openmeetings/wiki/Configuration_IBM_DB2";>IBM DB2</a> +</li><blockquote>By default $APP_NAME uses the integrated Apache Derby database. For production environment you should consider using <a target="_blank" href="http://code.google.com/p/openmeetings/wiki/Configuration_Mysql";>MySQL</a>, <a target="_blank" href="http://code.google.com/p/openmeetings/wiki/Configuration_Postgres";>Postgres</a> or for example <a href="http://code.google.com/p/openmeetings/wiki/Configuration_IBM_DB2";>IBM DB2</a> </blockquote><li><h4><a name="Enabling_Image_Upload_and_import_to_whiteboard"></a>Enabling Image Upload and import to whiteboard<a href="#Enabling_Image_Upload_and_import_to_whiteboard" class="section_anchor"></a></h4></li><ul><li>Install <strong>ImageMagick</strong> on the server, you can get more information on <a target="_blank" href="http://www.imagemagick.org"; rel="nofollow">http://www.imagemagick.org</a> regarding installation. The instructions for installation can be found there <a target="_blank" href="http://www.imagemagick.org/script/binary-releases.php"; rel="nofollow">http://www.imagemagick.org/script/binary-releases.php</a>, however on most linux systems you can get it via your favorite package managers (apt-get it) </li></ul><li><h4><a name="Enabling_import_of_PDFs_into_whiteboard"></a>Enabling import of PDFs into whiteboard<a href="#Enabling_import_of_PDFs_into_whiteboard" class="section_anchor"></a></h4></li><ul><li>Install <strong>GhostScript</strong> on the server, you can get more information on <a target="_blank" href="http://pages.cs.wisc.edu/%7Eghost/"; rel="nofollow">http://pages.cs.wisc.edu/~ghost/</a> regarding installation. The instructions for installation can be found there, however on most linux systems you can get it via your favorite package managers (apt-get it). </li><li>Install <strong>SWFTools</strong> on the server, you can get more information on <a target="_blank" href="http://www.swftools.org/"; rel="nofollow">http://www.swftools.org/</a> regarding installation. Some of the Linux distributions already have it in there package manager see <a target="_blank" href="http://packages.debian.org/unstable/utils/swftools"; rel="nofollow">http://packages.debian.org/unstable/utils/swftools</a>), the recommended version of <strong>SWFTools</strong> is 0.9 as prior version have a bug that does lead to wrong object dimensions in the Whiteboard </li></ul><li><h4><a name="Enabling_import_of_.doc,_.docx,_.ppt,_.pptx,_..._all_Office_Docu"></a>Enabling import of .doc, .docx, .ppt, .pptx, ... all Office Documents into whitebaord<a href="#Enabling_import_of_.doc,_.docx,_.ppt,_.pptx,_..._all_Office_Docu" class="section_anchor"></a></h4></li><ul><li><strong>OpenOffice-Service</strong> started and listening on port 8100, see <a target="_blank" href="http://code.google.com/p/openmeetings/wiki/OpenOfficeConverter";>OpenOfficeConverter</a> for details </li></ul><li><h4><a name="Enabling_Recording_and_import_of_.avi,_.flv,_.mov_and_.mp4_into"></a>Enabling Recording and import of .avi, .flv, .mov and .mp4 into whiteboard<a href="#Enabling_Recording_and_import_of_.avi,_.flv,_.mov_and_.mp4_into" class="section_anchor"></a></h4></li><ul><li>Install <strong>FFMpeg</strong>. You should get FFMPEG in an up to date copy! For Windows you can download a Build for example from <a target="_blank" href="http://ffmpeg.arrozcru.org/builds/"; rel="nofollow">http://ffmpeg.arrozcru.org/builds/</a> Linux or OSx Users should be able to use one of the various Installation Instructions on the Web. You need to enable libmp3lame! </li><li>Install <strong>SoX</strong> <a href="http://sox.sourceforge.net/"; target="_BLANK">http://sox.sourceforge.net/</a>. You should install SoX in a up to date copy! SoX 12.xx will NOT work! </li></ul></ol>

 <h3><A HREF="?command=step1">Continue with STEP 1</A></h3>

--
You received this message because you are subscribed to the Google Groups 
"OpenMeetings developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/openmeetings-dev?hl=en.

Reply via email to