Skip to content

Instantly share code, notes, and snippets.

@leshikus
Created June 6, 2013 10:07
Show Gist options
  • Save leshikus/5720534 to your computer and use it in GitHub Desktop.
Save leshikus/5720534 to your computer and use it in GitHub Desktop.
2.1.1. release changes (compared to 2.1)
Index: xdocs/HotKeys.xml
===================================================================
--- xdocs/HotKeys.xml (.../tags/2.1RC3) (revision 1490221)
+++ xdocs/HotKeys.xml (.../branches/2.1) (revision 1490221)
@@ -42,6 +42,12 @@
<td>
</td>
</tr>
+ <tr>
+ <td>F7 (code 118)</td>
+ <td>A hot key code for the 'mute/unmute audio' functionality.</td>
+ <td>Yes</td>
+ <td>mute.keycode</td>
+ </tr>
</table>
</section>
</body>
Index: xdocs/downloads.xml
===================================================================
--- xdocs/downloads.xml (.../tags/2.1RC3) (revision 1490221)
+++ xdocs/downloads.xml (.../branches/2.1) (revision 1490221)
@@ -26,31 +26,29 @@
<section name="Downloads">
<div>
All downloads can be verified using the Apache OpenMeetings code
- signing
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/KEYS">KEYS</a>
- .
+ signing <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/KEYS">KEYS</a>.
</div>
<p>
All are available for download as source and binary.
</p>
- s
+
<subsection name="Latest Official Release">
<p>
- Apache Openmeetings Incubating 2.0
+ Apache Openmeetings 2.1.0
</p>
<ul>
<li>
Binaries:
<ul>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.zip">apache-openmeetings-2.1.0.zip</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.zip.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.zip.md5">[MD5]</a>
</li>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.tar.gz">apache-openmeetings-2.1.0.tar.gz</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.tar.gz.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.tar.gz.md5">[MD5]</a>
</li>
</ul>
</li>
@@ -58,14 +56,14 @@
Sources:
<ul>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.zip">apache-openmeetings-2.1.0-src.zip</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.zip.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.zip.md5">[MD5]</a>
</li>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.tar.gz">apache-openmeetings-2.1.0-src.tar.gz</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.tar.gz.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.tar.gz.md5">[MD5]</a>
</li>
</ul>
</li>
@@ -73,8 +71,12 @@
</subsection>
- <!-- <subsection name="Previous Official Releases"> <p> No previous official
- releases are available. </p> </subsection> -->
+ <subsection name="Previous Official Releases">
+ <p>
+ Apache Openmeetings Incubating 2.0 is available here:
+ <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/">http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating</a>
+ </p>
+ </subsection>
<subsection name="Plugins / Non ASF downloads">
Index: xdocs/installation.xml
===================================================================
--- xdocs/installation.xml (.../tags/2.1RC3) (revision 1490221)
+++ xdocs/installation.xml (.../branches/2.1) (revision 1490221)
@@ -290,12 +290,12 @@
<li>
Use the Debug-Application: Enter in your browser
<a
- href="http://$RED-HOST:$RED5-PORT/openmeetings/maindebug.lzx.lzr=swf8.swf"
- rel="nofollow">http://$RED-HOST:$RED5-PORT/openmeetings/maindebug.lzx.lzr=maindebug.as3.swf11.swf
+ href="http://$RED-HOST:$RED5-PORT/openmeetings/?swf=maindebug.as3.swf11.swf"
+ rel="nofollow">http://$RED-HOST:$RED5-PORT/openmeetings/?swf=maindebug.as3.swf11.swf
</a>
for example
- <a href="http://localhost:5080/openmeetings/maindebug.lzx.lzr=swf8.swf"
- rel="nofollow">http://localhost:5080/openmeetings/maindebug.lzx.lzr=maindebug.as3.swf11.swf
+ <a href="http://localhost:5080/openmeetings/?swf=maindebug.as3.swf11.swf"
+ rel="nofollow">http://localhost:5080/openmeetings/?swf=maindebug.as3.swf11.swf
</a>
</li>
<li>If you have Problems with conversion-jobs check your Red5-Log
Index: xdocs/ManualTesting.xml
===================================================================
--- xdocs/ManualTesting.xml (.../tags/2.1RC3) (revision 0)
+++ xdocs/ManualTesting.xml (.../branches/2.1) (revision 1490221)
@@ -0,0 +1,380 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<document>
+
+ <properties>
+ <title>Manual Testing</title>
+ <author email="iarkh@apache.org">
+ OpenMeetings Team
+ </author>
+ </properties>
+
+ <body>
+
+ <section name="Introduction">
+
+ <p>
+ Below is a test plan for the OpenMeetings 2.1 pre-release testing.
+ </p>
+ </section>
+
+ <section name="Details">
+
+ <ol>
+ <li>
+ <b>User GUI tests</b>
+ <ol>
+ <li>
+ Login/logout
+ <ol>
+ <li>Password recovering </li>
+ <li>Self-registering </li>
+ <li>"Visit Apache OpenMeetings" link </li>
+ <li>Enter wrong login/password </li>
+ <li>Enter correct login/password </li>
+ <li>Exit the system by click the Exit button </li>
+ </ol>
+ </li>
+ <li>
+ Dashboard
+ <ol>
+ <li>Correct user info in the upper left corner </li>
+ <li>Links in the "Help and support" section </li>
+ <li>It should be possible to enter user’s room from the dashboard </li>
+ <li>Room details should be shown correctly in the "Rooms in this section…" part of the screen </li>
+ </ol>
+ </li>
+ <li>
+ Global chat
+ <ol>
+ <li>Send/receive message where at least 3 users in the system </li>
+ <li>Adding a contact to the contact list </li>
+ <li>Private message </li>
+ <li>Showing user profile </li>
+ <li>Inviting user to the conference room </li>
+ <li>Copy chat log </li>
+ <li>Delete chat log </li>
+ <li>Changing font style in the massage </li>
+ <li>Adding emotions to the message </li>
+ </ol>
+ Attention! Correct RTL support does not work in the current implementation
+ </li>
+ <li>
+ Calendar view
+ <ol>
+ <li>Change view (weekly/daily/monthly) and moving between the dates </li>
+ <li>Adding/removing/moving by mouse an event </li>
+ </ol>
+ </li>
+ <li>
+ Calendar invitation window
+ <ol>
+ <li>Creating/updating/deleting an event </li>
+ <li>Inviting 3 internal and 3 external guests </li>
+ <li>Different reminder types: receiving e-mail invitation for internal and external guests </li>
+ <li>Password protected invitation </li>
+ <li>Inviting to the rooms of the different types </li>
+ <li>Choosing time zone for external guest </li>
+ <li>Correct user data in the invitations </li>
+ <li>SMS reminder for internal and external guests </li>
+ <li>E-mail reminder for internal and external guests </li>
+ <li>It should be possible to enter to the event via invitation link room at the particular time slot only </li>
+ <li>Enter the room via invitation window </li>
+ </ol>
+ </li>
+ <li>
+ My Profile: User profile should contain correct user info and allow to edit this
+ </li>
+ <li>
+ Contacts and Messages
+ <ol>
+ <li>Add/remove a message </li>
+ <li>Creating a new folder </li>
+ <li>Moving between the folders </li>
+ <li>Marking messages as read/unread </li>
+ <li>Message filters </li>
+ <li>Contact list </li>
+ </ol>
+ </li>
+ <li>
+ User settings
+ <ol>
+ <li>Possibility to change the user info </li>
+ <li>Changing time zone and language (should start to work after user re-login </li>
+ <li>Community settings or different users </li>
+ <li>Display settings</li>
+ </ol>
+ </li>
+ <li>
+ Search users
+ <ol>
+ <li>Send a private message </li>
+ <li>Adding a contact </li>
+ <li>View contact details via user list </li>
+ </ol>
+ </li>
+ <li>
+ Room lists
+ <ol>
+ <li>Public rooms, private rooms and my rooms should contain correct room lists </li>
+ <li>User list for the selected room </li>
+ <li>Room details for the selected room </li>
+ </ol>
+ </li>
+ <li>
+ Recordings
+ <ol>
+ <li>The list should contain available recordings in public and private folders </li>
+ <li>Info panel should contain actual info about the recording </li>
+ <li>Downloading a recording is different formats (AVI/FLV) </li>
+ <li>Play the recording in OpenMeetings </li>
+ <li>Play downloaded recording by Windows player </li>
+ <li>Remove a recording from the folder </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – general issues (should be tested with at least 3 attendees)
+ <ol>
+ <li>Enter the room: different cases for the cam/micro, choosing of the cam resolution, test recording, allow/deny of video </li>
+ <li>User list should be shown correctly </li>
+ <li>Correct user credentials after the room entering </li>
+ <li>Add moderator permissions to the user </li>
+ <li>Turn micro on/off in the user list </li>
+ <li>Increasing/decreasing sound level and turning micro on/off in the video window </li>
+ <li>Turn micro on/off in the user list to another user – possible by the moderator only </li>
+ <li>Increasing/decreasing sound level and turning micro on/off in the video window - possible by the moderator only </li>
+ <li>Allow/deny drawing on whiteboard – possible by the moderator only </li>
+ <li>Allow/deny screen sharing – possible by the moderator only </li>
+ <li>Allow/deny remote screen control – possible by the moderator only </li>
+ <li>Allow/deny exclusive audio – possible by the moderator only </li>
+ <li>Re-start devise settings via user list </li>
+ <li>Re-start devise settings via video window </li>
+ <li>Kick the user off by the moderator </li>
+ <li>Click F8 key to arrange videos </li>
+ <li>Activity and actions panel should contain correct info </li>
+ <li>Exit the room </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing: file uploading + documents
+ <ol>
+ <li>Upload a document with "Load directly to whiteboard" switch turned on </li>
+ <li>Upload a with "Load directly to whiteboard" switch turned on off </li>
+ <li>Upload a document with the localized file name and spaces in the name </li>
+ <li>Uploading a document into different folders: private files should be visible only their owner only </li>
+ <li>Removing a file from the room </li>
+ <li>Home and public drive size should change correctly </li>
+ <li>Adding a new folder </li>
+ <li>Removing a folder </li>
+ <li>Load a document of each supported type and check that it’s shown correctly </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – whiteboard and properties panels (should be tested with at least 3 attendees)
+ <ol>
+ <li>Adding a removing a whiteboard </li>
+ <li>Full-fit switch </li>
+ <li>Clear whiteboard </li>
+ <li>Clear objects of current slide only </li>
+ <li>Save and export </li>
+ <li>Undo </li>
+ <li>Select an object </li>
+ <li>Pointer </li>
+ <li>Text </li>
+ <li>Paint </li>
+ <li>Draw line </li>
+ <li>Draw underline </li>
+ <li>Rectangle </li>
+ <li>Ellipse </li>
+ <li>Arrow </li>
+ <li>Cliparts</li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – chat (should be tested with at least 3 attendees)
+ <ol>
+ <li>Send a message </li>
+ <li>Start a private chat </li>
+ <li>Chat moderation </li>
+ <li>Font style </li>
+ <li>Emotions </li>
+ <li>Show/copy chat log </li>
+ <li>Delete server chat log </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – screen sharing and recordings (should be tested with at least 3 attendees)
+ <ol>
+ <li>"Share record/screen" button in the room </li>
+ <li>Desktop sharer: start/stop sharing </li>
+ <li>Change the shared screen area (X-offset, Y-offset, width, height) </li>
+ <li>Change the screen sharing quality </li>
+ <li>Start/stop recordings – need to check that it works as expected </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – Actions menu
+ <ol>
+ <li>Send invitation: send English and localized message </li>
+ <li>Send invitation with password </li>
+ <li>Send invitations with 3 different time periods </li>
+ <li>Change time zone of the invitation </li>
+ <li>Change language of the invitation </li>
+ <li>Send invitation screen: "Generate URL" button – check the same things as for the invitations sent by email </li>
+ <li>Apply to be moderator </li>
+ <li>Apply to whiteboard access </li>
+ <li>Apply to audio/video access </li>
+ <li>Create a poll </li>
+ <li>Poll results </li>
+ <li>Vote </li>
+ <li>Default whiteboard settings: check all of them </li>
+ </ol>
+ </li>
+ <li>
+ Conference room testing
+ <ol>
+ <li>User list should look in another way in compare with restricted type </li>
+ <li>Generally, all should look OK when enter the room </li>
+ </ol>
+ </li>
+ <li>
+ Interview room testing (should be tested with at least 3 attendees)
+ <ol>
+ <li>User list should look as expected </li>
+ <li>Change a user for video pod </li>
+ <li>Start/stop recordings </li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <b>Admin GUI tests</b>
+ <ol>
+ <li>
+ Users
+ <ol>
+ <li>Add/edit/remove/search user in the table </li>
+ <li>Move between screens where there are many users in the table </li>
+ <li>Edit text fields </li>
+ <li>Change a time zone, re-login and check the calendar </li>
+ <li>Change a language, re-login and check the GUI language </li>
+ <li>Е-mail: e-mails should pass </li>
+ <li>Phone and SMS switch: if set and turned on, sms messages should pass </li>
+ <li>Change a status – non-active user cannot login </li>
+ <li>Change user role and re-login </li>
+ <li>Change user group - user has an access only to the rooms belong to his organization </li>
+ <li>Change community settings and check </li>
+ </ol>
+ </li>
+ <li>
+ Connections
+ <ol>
+ <li>Should be tested with at least 3 users in the system </li>
+ <li>Sessionvars table should be shown correctly </li>
+ <li>Kick the user from the system </li>
+ </ol>
+ </li>
+ <li>
+ Organizations
+ <ol>
+ <li>Add/remove/edit/search an organization </li>
+ <li>Add/remove a user from the user list of selected organization </li>
+ </ol>
+ </li>
+ <li>
+ Conference rooms
+ <ol>
+ <li>Add/remove/edit/search a room </li>
+ <li>User list for the given room should contain actual list </li>
+ <li>Turn the Moderation switch on/off and enter the room </li>
+ <li>Add/remove a user to the default moderator list </li>
+ <li>Check max participants number in the room </li>
+ <li>Change room type and enter the room </li>
+ <li>Turn public switch on/off </li>
+ <li>Turn "Demo switch" on/off, change the demonstration time </li>
+ <li>Turn "Allow user questions" on/off and enter the room </li>
+ <li>Turn "Audio only" switch on/off and enter the room </li>
+ <li>Set "Close URL" to some URL, enter the room and then exit – you should be re-directed correspondingly </li>
+ <li>Check that SIP settings work as expected </li>
+ <li>Check that "Allow recordings" switch works as expected </li>
+ <li>Check that "Layout options" switch work as expected </li>
+ <li>Check that "Allow font styles" switch works as expected </li>
+ </ol>
+ </li>
+ <li>
+ Configuration
+ <ol>
+ <li>Allow_frontend_register </li>
+ <li>Mail server settings </li>
+ <li>SMS provider settings </li>
+ <li>Application.name </li>
+ <li>Default_lang_id </li>
+ <li>default time zone </li>
+ <li>SIP settings </li>
+ <li>Reminder minutes </li>
+ </ol>
+ </li>
+ <li>
+ Language editor
+ <ol>
+ <li>Add/remove/edit/search a key </li>
+ <li>Import/export of localization files </li>
+ </ol>
+ </li>
+ <li>
+ LDAP: Add/remove/edit/search a record
+ </li>
+ <li>
+ Backup
+ <ol>
+ <li>System import </li>
+ <li>System backup </li>
+ <li>TBD – need to add tests for command line admin here </li>
+ </ol>
+ </li>
+ <li>
+ Servers: Add/remove/edit/search a server
+ </li>
+ </ol>
+ </li>
+ <li>
+ <b>SIP integration tests</b> (should be tested with at least 3 attendees in the room; for restricted and interview rooms)
+ <ol>
+ <li>Call from the room to the external phone number </li>
+ <li>Call from external phone number to the room </li>
+ <li>Call from the software phone to the room </li>
+ <li>Call from the software phone with video to the room </li>
+ </ol>
+ </li>
+ <li>
+ <b>Network testing script</b>
+ </li>
+ <li>
+ <b>Site integration tests</b>
+ <ol>
+ <li>Enter OpenMeetings room from Mooddle site </li>
+ <li>Check that recordings link are shown on the Moodle site </li>
+ <li>Enter OpenMeetings room from Joomla site </li>
+ <li>Check that recordings link are shown on the Joomla site </li>
+ <li>Enter OpenMeetings room from Drupal site </li>
+ <li>Check that recordings link are shown on the Drupal site </li>
+ </ol>
+ </li>
+ </ol>
+ </section>
+
+ </body>
+
+</document>
\ В конце файла нет новой строки
Index: xdocs/stylesheets/project.xml
===================================================================
--- xdocs/stylesheets/project.xml (.../tags/2.1RC3) (revision 1490221)
+++ xdocs/stylesheets/project.xml (.../branches/2.1) (revision 1490221)
@@ -51,6 +51,7 @@
<item name="Dependencies" href="/dependencies.html"/>
<item name="Build Instructions" href="/BuildInstructions.html"/>
<item name="JUnit Testing" href="/JUnitTesting.html"/>
+ <item name="Manual Testing" href="/ManualTesting.html"/>
<item name="Release Guide" href="/ReleaseGuide.html"/>
<item name="Website Guide" href="/WebsiteGuide.html"/>
</menu>
Index: xdocs/index.xml
===================================================================
--- xdocs/index.xml (.../tags/2.1RC3) (revision 1490221)
+++ xdocs/index.xml (.../branches/2.1) (revision 1490221)
@@ -118,6 +118,11 @@
<p>
<strong>
+ OpenMeetings 2.1.0 is released! Please check <a href="downloads.html">Downloads page</a>.
+ (2013-04-01)
+ </strong>
+ <br />
+ <strong>
OpenMeetings new URL, update your filters!
<a href="http://openmeetings.apache.org">openmeetings.apache.org</a> is the new home.
(2013-01-28)
Index: xdocs/ReleaseGuide.xml
===================================================================
--- xdocs/ReleaseGuide.xml (.../tags/2.1RC3) (revision 1490221)
+++ xdocs/ReleaseGuide.xml (.../branches/2.1) (revision 1490221)
@@ -220,33 +220,11 @@
<subsection name="Step3 - Distribute and announce">
<p>If VOTEs positive: Upload the release </p>
<div class="xmlcode">
- The distribution upload location
- (www.apache.org/dist)
- for all Apache projects is the
- /www/www.apache.org/dist directory on
- people.apache.org. Each
- project owns a directory within dist.
+ svn mv https://dist.apache.org/repos/dist/dev/openmeetings/2.1/rc3 \<br/>
+ https://dist.apache.org/repos/dist/release/openmeetings/2.1 \<br/>
+ -m "RC3 is released as 2.1"
</div>
<p>
- Our distribution directory is:
- <br />
- /www/www.apache.org/dist/incubator/openmeetings
- <br />
- each version should have a subfolder within this directory matching
- the name of the release:
- <br />
- for example 2.0
- <br />
- Make sure the the files/folders in the section
- /www/www.apache.org/dist/incubator/openmeetings have the proper
- rights,
- see:
- <a
- href="http://incubator.apache.org/guides/releasemanagement.html#distribution-permissions"
- target="_BLANK">http://incubator.apache.org/guides/releasemanagement.html#distribution-permissions
- </a>
- </p>
- <p>
Wait 24 hours (until all Apache mirrors have synced the packages)
and send an announcement to the mailing list + blog and any other
channel.
@@ -254,24 +232,16 @@
<p>
Email announcements should have the subject line:
<br />
- [ANNOUNCE] Apache OpenMeetings x.xx [Incubating] released
+ [ANNOUNCE] Apache OpenMeetings x.xx released
</p>
<p>
- Add a section to
- <a href="downloads.html">downloads</a>
- website.
- <br />
- Make sure that the binary packages are linked using the mirror URL
- as base path (
- <b>not</b>
- www.apache.org/dist):
- <br />
+ Add a section to <a href="downloads.html">downloads</a> website.<br />
+ Make sure that the binary packages are linked using the mirror URL as base path (
+ <b>not</b>http://www.apache.org/dist):<br />
Mirror URL:
- <a href="http://www.apache.org/dyn/closer.cgi/incubator/openmeetings/">http://www.apache.org/dyn/closer.cgi/incubator/openmeetings/
- </a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/">http://www.apache.org/dyn/closer.cgi/openmeetings/</a>
</p>
</subsection>
-
</section>
</body>
Index: xdocs/red5sip-integration_2.1.xml
===================================================================
--- xdocs/red5sip-integration_2.1.xml (.../tags/2.1RC3) (revision 1490221)
+++ xdocs/red5sip-integration_2.1.xml (.../branches/2.1) (revision 1490221)
@@ -83,7 +83,7 @@
<blockquote>
<i>
sudo mkdir /usr/src/asterisk &amp;&amp; cd /usr/src/asterisk<br />
- sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11.2.1.tar.gz<br />
+ sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-11.2.1.tar.gz<br />
sudo tar -xvzf asterisk-11.2.1.tar.gz<br />
cd ./asterisk-11.2.1<br />
sudo make clean<br />
Index: src/org/apache/openmeetings/ldap/LdapLoginManagement.java
===================================================================
--- src/org/apache/openmeetings/ldap/LdapLoginManagement.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/ldap/LdapLoginManagement.java (.../branches/2.1) (revision 1490221)
@@ -18,6 +18,8 @@
*/
package org.apache.openmeetings.ldap;
+import static org.apache.openmeetings.persistence.beans.basic.Configuration.DEFAUT_LANG_KEY;
+
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
@@ -306,19 +308,14 @@
***/
// Get custom Ldap attributes mapping
- String ldap_user_attr_lastname = configData
- .get(CONFIGKEY_LDAP_KEY_LASTNAME);
- String ldap_user_attr_firstname = configData
- .get(CONFIGKEY_LDAP_KEY_FIRSTNAME);
+ String ldap_user_attr_lastname = configData.get(CONFIGKEY_LDAP_KEY_LASTNAME);
+ String ldap_user_attr_firstname = configData.get(CONFIGKEY_LDAP_KEY_FIRSTNAME);
String ldap_user_attr_mail = configData.get(CONFIGKEY_LDAP_KEY_MAIL);
- String ldap_user_attr_street = configData
- .get(CONFIGKEY_LDAP_KEY_STREET);
- String ldap_user_attr_additional_name = configData
- .get(CONFIGKEY_LDAP_KEY_ADDITIONAL_NAME);
+ String ldap_user_attr_street = configData.get(CONFIGKEY_LDAP_KEY_STREET);
+ String ldap_user_attr_additional_name = configData.get(CONFIGKEY_LDAP_KEY_ADDITIONAL_NAME);
String ldap_user_attr_fax = configData.get(CONFIGKEY_LDAP_KEY_FAX);
String ldap_user_attr_zip = configData.get(CONFIGKEY_LDAP_KEY_ZIP);
- String ldap_user_attr_country = configData
- .get(CONFIGKEY_LDAP_KEY_COUNTRY);
+ String ldap_user_attr_country = configData.get(CONFIGKEY_LDAP_KEY_COUNTRY);
String ldap_user_attr_town = configData.get(CONFIGKEY_LDAP_KEY_TOWN);
String ldap_user_attr_phone = configData.get(CONFIGKEY_LDAP_KEY_PHONE);
String ldap_user_attr_timezone = configData.get(CONFIGKEY_LDAP_TIMEZONE_NAME);
@@ -363,15 +360,13 @@
if (ldap_user_attr_timezone == null) {
ldap_user_attr_timezone = LDAP_KEY_TIMEZONE;
}
- if (ldap_user_picture_uri == null) {
- ldap_user_picture_uri = LDAP_KEY_PICTURE_URI;
- }
// Auth Type
String ldap_auth_type = configData.get(CONFIGKEY_LDAP_AUTH_TYPE);
- if (ldap_auth_type == null)
+ if (ldap_auth_type == null) {
ldap_auth_type = "";
+ }
if (!isValidAuthType(ldap_auth_type)) {
log.error("ConfigKey in Ldap Config contains invalid auth type : '"
@@ -381,19 +376,16 @@
}
// Filter for Search of UserData
- String ldap_search_filter = "(" + ldap_fieldname_user_principal + "="
- + user + ")";
+ String ldap_search_filter = "(" + ldap_fieldname_user_principal + "=" + user + ")";
- log.debug("Searching userdata with LDAP Search Filter :"
- + ldap_search_filter);
+ log.debug("Searching userdata with LDAP Search Filter :" + ldap_search_filter);
// replace : -> in config = are replaced by : to be able to build valid
// key=value pairs
ldap_search_scope = ldap_search_scope.replaceAll(":", "=");
ldap_admin_dn = ldap_admin_dn.replaceAll(":", "=");
- LdapAuthBase lAuth = new LdapAuthBase(ldap_url, ldap_admin_dn,
- ldap_passwd, ldap_auth_type);
+ LdapAuthBase lAuth = new LdapAuthBase(ldap_url, ldap_admin_dn, ldap_passwd, ldap_auth_type);
log.debug("authenticating admin...");
lAuth.authenticateUser(ldap_admin_dn, ldap_passwd);
@@ -407,8 +399,7 @@
HashMap<String, String> uidCnDictionary = lAuth.getUidCnHashMap(
ldap_search_scope, ldap_search_filter, ldap_fieldname_user_principal);
if (uidCnDictionary.get(user) != null) {
- ldapUserDN = uidCnDictionary.get(user) + ","
- + ldap_search_scope;
+ ldapUserDN = uidCnDictionary.get(user) + "," + ldap_search_scope;
log.debug("Authentication with DN: " + ldapUserDN);
}
try {
@@ -422,8 +413,9 @@
}
} else {
try {
- if (!lAuth.authenticateUser(user, passwd))
+ if (!lAuth.authenticateUser(user, passwd)) {
return new Long(-11);
+ }
} catch (Exception e) {
log.error("Error on LdapAuth : " + e.getMessage());
return null;
@@ -454,7 +445,9 @@
attributes.add(ldap_user_attr_town); // Town
attributes.add(ldap_user_attr_phone); // Phone
attributes.add(ldap_user_attr_timezone); // timezone
+ if (ldap_user_picture_uri != null) {
attributes.add(ldap_user_picture_uri); //picture uri
+ }
HashMap<String, String> ldapAttrs = new HashMap<String, String>();
ldapAttrs.put("lastnameAttr", ldap_user_attr_lastname);
@@ -468,7 +461,9 @@
ldapAttrs.put("townAttr", ldap_user_attr_town);
ldapAttrs.put("phoneAttr", ldap_user_attr_phone);
ldapAttrs.put("timezoneAttr", ldap_user_attr_timezone);
+ if (ldap_user_picture_uri != null) {
ldapAttrs.put("pictureUri", ldap_user_picture_uri);
+ }
Vector<HashMap<String, String>> result = lAuth.getData(
ldap_search_scope, ldap_search_filter, attributes);
@@ -479,8 +474,7 @@
}
if (result.size() > 1) {
- log.error("Error on Ldap request - more than one result for user "
- + user);
+ log.error("Error on Ldap request - more than one result for user " + user);
return null;
}
@@ -500,12 +494,10 @@
String token = Long.toString(Math.abs(r.nextLong()), 36);
log.debug("Synching Ldap user to OM DB with RANDOM password: "
+ token);
- userid = createUserFromLdapData(userData, token, user,
- ldapAttrs);
+ userid = createUserFromLdapData(userData, token, user, ldapAttrs);
} else {
log.debug("Synching Ldap user to OM DB with password");
- userid = createUserFromLdapData(userData, passwd, user,
- ldapAttrs);
+ userid = createUserFromLdapData(userData, passwd, user, ldapAttrs);
}
log.debug("New User ID : " + userid);
@@ -703,8 +695,7 @@
new java.util.Date(), //age
street,
additionalname, fax, zip, state_id, town,
- configurationDao.getConfValue("default_lang_id",
- Long.class, "0"), // language_id
+ configurationDao.getConfValue(DEFAUT_LANG_KEY, Long.class, "1"), // language_id
false, // sendWelcomeMessage
Arrays.asList(configurationDao.getConfValue(
"default_domain_id", Long.class, null)), // organozation
Index: src/org/apache/openmeetings/servlet/outputhandler/ActivateUser.java
===================================================================
--- src/org/apache/openmeetings/servlet/outputhandler/ActivateUser.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/servlet/outputhandler/ActivateUser.java (.../branches/2.1) (revision 1490221)
@@ -136,7 +136,6 @@
return getBooting();
} catch (Exception err) {
log.error("[ActivateUser]", err);
- err.printStackTrace();
}
return null;
}
Index: src/org/apache/openmeetings/servlet/outputhandler/BackupImportController.java
===================================================================
--- src/org/apache/openmeetings/servlet/outputhandler/BackupImportController.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/servlet/outputhandler/BackupImportController.java (.../branches/2.1) (revision 1490221)
@@ -522,6 +522,9 @@
file.setFileExplorerItemId(0);
Long roomId = file.getRoom_id();
file.setRoom_id(roomsMap.containsKey(roomId) ? roomsMap.get(roomId) : null);
+ if (file.getOwnerId() != null) {
+ file.setOwnerId(usersMap.get(file.getOwnerId()));
+ }
fileExplorerItemDao.addFileExplorerItem(file);
}
}
@@ -628,10 +631,7 @@
uploadCompleteMessage, info.publicSID);
} catch (Exception e) {
-
log.error("[ImportExport]", e);
-
- e.printStackTrace();
throw new ServletException(e);
}
Index: src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java
===================================================================
--- src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/servlet/outputhandler/BackupExport.java (.../branches/2.1) (revision 1490221)
@@ -406,7 +406,7 @@
try {
ser.write(t, listNode);
} catch (Exception e) {
- log.debug("Exception While writing node of type: " + t.getClass(), e);
+ log.error("Exception While writing node of type: " + t.getClass(), e);
}
}
}
@@ -531,14 +531,14 @@
try {
zos.close();
} catch (IOException e) {
- log.debug("Enexpected error while closing ZipOutputStream", e);
+ log.error("Enexpected error while closing ZipOutputStream", e);
}
}
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
- log.debug("Enexpected error while closing FileOutputStream", e);
+ log.error("Enexpected error while closing FileOutputStream", e);
}
}
}
Index: src/org/apache/openmeetings/servlet/outputhandler/DefaultIndex.java
===================================================================
--- src/org/apache/openmeetings/servlet/outputhandler/DefaultIndex.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/servlet/outputhandler/DefaultIndex.java (.../branches/2.1) (revision 1490221)
@@ -25,6 +25,7 @@
import javax.servlet.http.HttpServletResponse;
import org.apache.openmeetings.OpenmeetingsVariables;
+import org.apache.openmeetings.Version;
import org.apache.openmeetings.data.basic.dao.ConfigurationDao;
import org.apache.openmeetings.servlet.BaseVelocityViewServlet;
import org.apache.openmeetings.servlet.ServerNotInitializedException;
@@ -47,6 +48,7 @@
try {
String template = "usual_template.vm";
ctx.put("APP_NAME", getBean(ConfigurationDao.class).getAppName());
+ ctx.put("REVISION", Version.getRevision());
// Parse the Param for the SWF URL
String swf = httpServletRequest.getParameter("swf");
if (swf == null) {
Index: src/org/apache/openmeetings/servlet/outputhandler/Export.java
===================================================================
--- src/org/apache/openmeetings/servlet/outputhandler/Export.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/servlet/outputhandler/Export.java (.../branches/2.1) (revision 1490221)
@@ -139,8 +139,6 @@
}
} catch (Exception er) {
log.error("ERROR ", er);
- System.out.println("Error exporting: " + er);
- er.printStackTrace();
}
}
}
Index: src/org/apache/openmeetings/servlet/outputhandler/LangExport.java
===================================================================
--- src/org/apache/openmeetings/servlet/outputhandler/LangExport.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/servlet/outputhandler/LangExport.java (.../branches/2.1) (revision 1490221)
@@ -156,8 +156,6 @@
} catch (Exception er) {
log.error("ERROR ", er);
- System.out.println("Error exporting: " + er);
- er.printStackTrace();
}
}
Index: src/org/apache/openmeetings/servlet/outputhandler/UploadController.java
===================================================================
--- src/org/apache/openmeetings/servlet/outputhandler/UploadController.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/servlet/outputhandler/UploadController.java (.../branches/2.1) (revision 1490221)
@@ -136,6 +136,14 @@
}
}
+ @RequestMapping(value = "/remotelog.upload", method = RequestMethod.POST)
+ public void handleRemoteLog(HttpServletRequest request, HttpServletResponse response) throws ServletException {
+ String message = request.getParameter("message");
+ if (message != null) {
+ log.debug("[CLIENT MESSAGE] " + message);
+ }
+ }
+
@RequestMapping(value = "/upload.upload", method = RequestMethod.POST)
public void handleFormUpload(HttpServletRequest request, HttpServletResponse response) throws ServletException {
try {
Index: src/org/apache/openmeetings/persistence/beans/basic/Configuration.java
===================================================================
--- src/org/apache/openmeetings/persistence/beans/basic/Configuration.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/persistence/beans/basic/Configuration.java (.../branches/2.1) (revision 1490221)
@@ -56,6 +56,7 @@
@Root(name = "config")
public class Configuration implements Serializable, IDataProviderEntity {
private static final long serialVersionUID = -6129473946508963339L;
+ public static final String DEFAUT_LANG_KEY = "default_lang_id";
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
Index: src/org/apache/openmeetings/persistence/beans/user/UserContact.java
===================================================================
--- src/org/apache/openmeetings/persistence/beans/user/UserContact.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/persistence/beans/user/UserContact.java (.../branches/2.1) (revision 1490221)
@@ -43,7 +43,7 @@
@NamedQuery(name = "deleteAllUserContacts", query = "delete from UserContact u where u.owner.user_id = :ownerId"),
@NamedQuery(name = "checkUserContacts", query = "select count(c.userContactId) from UserContact c " +
"where c.contact.user_id = :user_id AND c.owner.user_id = :ownerId "),
- @NamedQuery(name = "getContactsByHash", query = "select c from UserContacts c " +
+ @NamedQuery(name = "getContactsByHash", query = "select c from UserContact c " +
"where c.hash like :hash "),
@NamedQuery(name = "getContactsByUserAndStatus", query = "select c from UserContact c " +
"where c.owner.user_id = :ownerId " +
Index: src/org/apache/openmeetings/remote/UserService.java
===================================================================
--- src/org/apache/openmeetings/remote/UserService.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/remote/UserService.java (.../branches/2.1) (revision 1490221)
@@ -1075,22 +1075,21 @@
// appointment as we created the
// room, the invitations always belong to the
// appointment of the meeting creator
- if (to != null
- && !to.getUser_id().equals(from.getUser_id())) {
+ if (to != null && !to.getUser_id().equals(from.getUser_id())) {
this.addAppointmentToUser(subject, message, to,
recipients, room, appointmentstart,
appointmentend, false, true,
sendJNameTimeZone);
}
+ String username = to == null ? "" : to.getFirstname() + " " + to.getLastname();;
Invitations invitation = invitationManager
.addInvitationLink(
new Long(2), // userlevel
- from.getFirstname() + " "
- + from.getLastname(), // username
+ username, // username
message,
baseURL, // baseURl
- from.getAdresses().getEmail(), // email
+ email, // email
subject, // subject
room_id, // room_id
"public",
@@ -1103,8 +1102,8 @@
baseURL, from.getUser_id(),
false, // really send mail sendMail
appointmentstart, appointmentend,
- appointmentId, from.getFirstname()
- + " " + from.getLastname(),
+ appointmentId,
+ from.getFirstname() + " " + from.getLastname(),
from.getOmTimeZone());
invitation_link = baseURL + "?invitationHash="
Index: src/org/apache/openmeetings/remote/MainService.java
===================================================================
--- src/org/apache/openmeetings/remote/MainService.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/remote/MainService.java (.../branches/2.1) (revision 1490221)
@@ -751,6 +751,7 @@
cList.add(configurationDao.get("exclusive.audio.keycode"));
cList.add(configurationDao.get("red5sip.enable"));
cList.add(configurationDao.get("max_upload_size"));
+ cList.add(configurationDao.get("mute.keycode"));
return cList;
Index: src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java
===================================================================
--- src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/remote/red5/ScopeApplicationAdapter.java (.../branches/2.1) (revision 1490221)
@@ -31,6 +31,7 @@
import java.util.Set;
import org.apache.openmeetings.OpenmeetingsVariables;
+import org.apache.openmeetings.Version;
import org.apache.openmeetings.data.basic.SessiondataDao;
import org.apache.openmeetings.data.basic.dao.ConfigurationDao;
import org.apache.openmeetings.data.basic.dao.ServerDao;
@@ -148,13 +149,7 @@
}
ScopeApplicationAdapter.initComplete = true;
- log.debug("\n" +
- "\t################################################\n" +
- "\t# Openmeetings is up #\n" +
- "\t# and ready to use #\n" +
- "\t################################################\n"
- );
-
+ Version.logOMStarted();
} catch (Exception err) {
log.error("[appStart]", err);
}
@@ -2577,7 +2572,7 @@
return true;
} catch (Exception err) {
- log.debug("[startInterviewRecording]", err);
+ log.error("[startInterviewRecording]", err);
}
return null;
}
@@ -2606,7 +2601,7 @@
}
}
} catch (Exception err) {
- log.debug("[sendRemoteCursorEvent]", err);
+ log.error("[sendRemoteCursorEvent]", err);
}
return null;
}
@@ -2688,7 +2683,7 @@
return true;
} catch (Exception err) {
- log.debug("[startInterviewRecording]", err);
+ log.error("[stopInterviewRecording]", err);
}
return null;
}
@@ -2708,7 +2703,7 @@
return sessionManager.getClientListByRoom(currentClient.getRoom_id());
} catch (Exception err) {
- log.debug("[getClientListScope]", err);
+ log.error("[getClientListScope]", err);
}
return new ArrayList<Client>();
}
@@ -2740,10 +2735,6 @@
return null;
}
- public String getExclusiveAudioKeyCode() {
- return configurationDao.getConfValue("exclusive.audio.keycode", String.class, null);
- }
-
public synchronized IScope getRoomScope(String room) {
try {
Index: src/org/apache/openmeetings/remote/ConferenceService.java
===================================================================
--- src/org/apache/openmeetings/remote/ConferenceService.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/remote/ConferenceService.java (.../branches/2.1) (revision 1490221)
@@ -270,7 +270,7 @@
return ment;
} catch (Exception e) {
- log.error("getAppointMentDataForRoom " + e.getMessage());
+ log.error("getAppointMentDataForRoom ", e);
return null;
}
@@ -631,7 +631,6 @@
} catch (Exception err) {
log.error("[getRoomModeratorsByRoomId]", err);
- err.printStackTrace();
}
return null;
Index: src/org/apache/openmeetings/remote/CalendarService.java
===================================================================
--- src/org/apache/openmeetings/remote/CalendarService.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/remote/CalendarService.java (.../branches/2.1) (revision 1490221)
@@ -215,7 +215,6 @@
}
} catch (Exception err) {
log.error("[updateAppointment]", err);
- err.printStackTrace();
}
return null;
@@ -285,7 +284,6 @@
}
} catch (Exception err) {
log.error("[updateAppointment]", err);
- err.printStackTrace();
}
return null;
Index: src/org/apache/openmeetings/remote/FLVRecorderService.java
===================================================================
--- src/org/apache/openmeetings/remote/FLVRecorderService.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/remote/FLVRecorderService.java (.../branches/2.1) (revision 1490221)
@@ -133,7 +133,6 @@
return null;
} catch (Exception err) {
- err.printStackTrace();
log.error("[checkForRecording]", err);
}
return null;
@@ -728,7 +727,6 @@
}
} catch (Exception err) {
log.error("[getFlvRecordingWithMetaData] ", err);
- err.printStackTrace();
}
return null;
}
@@ -746,7 +744,6 @@
}
} catch (Exception err) {
log.error("[getFlvRecordingLog] ", err);
- err.printStackTrace();
}
return null;
}
Index: src/org/apache/openmeetings/utils/crypt/MD5Implementation.java
===================================================================
--- src/org/apache/openmeetings/utils/crypt/MD5Implementation.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/utils/crypt/MD5Implementation.java (.../branches/2.1) (revision 1490221)
@@ -20,8 +20,14 @@
import java.security.NoSuchAlgorithmException;
+import org.apache.openmeetings.OpenmeetingsVariables;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+
public class MD5Implementation implements ICryptString {
+ private static final Logger log = Red5LoggerFactory.getLogger(MD5Implementation.class, OpenmeetingsVariables.webAppRootKey);
+
/*
* (non-Javadoc)
* @see org.apache.openmeetings.utils.crypt.ICryptString#createPassPhrase(java.lang.String)
@@ -31,7 +37,7 @@
try {
passPhrase = MD5.do_checksum(userGivenPass);
} catch (NoSuchAlgorithmException e) {
- e.printStackTrace();
+ log.error("[createPassPhrase]", e);
}
return passPhrase;
}
Index: src/org/apache/openmeetings/utils/crypt/MD5CryptImplementation.java
===================================================================
--- src/org/apache/openmeetings/utils/crypt/MD5CryptImplementation.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/utils/crypt/MD5CryptImplementation.java (.../branches/2.1) (revision 1490221)
@@ -20,8 +20,14 @@
import java.security.NoSuchAlgorithmException;
+import org.apache.openmeetings.OpenmeetingsVariables;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+
public class MD5CryptImplementation implements ICryptString {
+ private static final Logger log = Red5LoggerFactory.getLogger(MD5CryptImplementation.class, OpenmeetingsVariables.webAppRootKey);
+
/*
* (non-Javadoc)
* @see org.apache.openmeetings.utils.crypt.ICryptString#createPassPhrase(java.lang.String)
@@ -31,7 +37,7 @@
try {
passPhrase = MD5Crypt.crypt(userGivenPass);
} catch (NoSuchAlgorithmException e) {
- e.printStackTrace();
+ log.error("[createPassPhrase]", e);
}
return passPhrase;
}
@@ -47,7 +53,7 @@
try {
validPassword = passwdFromDb.equals(MD5Crypt.crypt(passGiven, salt));
} catch (NoSuchAlgorithmException e) {
- e.printStackTrace();
+ log.error("[verifyPassword]", e);
}
return validPassword;
}
Index: src/org/apache/openmeetings/utils/image/ImageUtility.java
===================================================================
--- src/org/apache/openmeetings/utils/image/ImageUtility.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/utils/image/ImageUtility.java (.../branches/2.1) (revision 1490221)
@@ -25,10 +25,15 @@
import javax.imageio.ImageIO;
+import org.apache.openmeetings.OpenmeetingsVariables;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+
public class ImageUtility {
+ private static final Logger log = Red5LoggerFactory.getLogger(ImageUtility.class, OpenmeetingsVariables.webAppRootKey);
static {ImageIO.setUseCache(false);}
public static java.awt.image.BufferedImage read(java.io.InputStream in) throws IOException {
@@ -43,7 +48,7 @@
try {
return read(new ByteArrayInputStream(bytes));
} catch (IOException e) {
- e.getStackTrace();
+ log.error("[read]", e);
return null;
}
}
Index: src/org/apache/openmeetings/utils/mail/ByteArrayDataSource.java
===================================================================
--- src/org/apache/openmeetings/utils/mail/ByteArrayDataSource.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/utils/mail/ByteArrayDataSource.java (.../branches/2.1) (revision 1490221)
@@ -21,7 +21,14 @@
import java.io.*;
import javax.activation.*;
+import org.apache.openmeetings.OpenmeetingsVariables;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+
public class ByteArrayDataSource implements DataSource {
+
+ private static final Logger log = Red5LoggerFactory.getLogger(ByteArrayDataSource.class, OpenmeetingsVariables.webAppRootKey);
+
private byte[] data; // data
private String type; // content-type
@@ -38,6 +45,7 @@
data = os.toByteArray();
os.close();
} catch (IOException ioex) {
+ log.error("[ByteArrayDataSource]", ioex);
}
}
Index: src/org/apache/openmeetings/utils/ProcessHelper.java
===================================================================
--- src/org/apache/openmeetings/utils/ProcessHelper.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/utils/ProcessHelper.java (.../branches/2.1) (revision 1490221)
@@ -74,6 +74,7 @@
line = br.readLine();
}
} catch (IOException ioexception) {
+ log.error("[run]", ioexception);
return;
}
}
Index: src/org/apache/openmeetings/documents/CreateLibraryPresentation.java
===================================================================
--- src/org/apache/openmeetings/documents/CreateLibraryPresentation.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/documents/CreateLibraryPresentation.java (.../branches/2.1) (revision 1490221)
@@ -23,14 +23,21 @@
import java.io.FilenameFilter;
import java.util.Arrays;
+import org.apache.openmeetings.OpenmeetingsVariables;
import org.apache.openmeetings.documents.beans.ConverterProcessResult;
import org.apache.openmeetings.utils.OmFileHelper;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.XMLWriter;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
public class CreateLibraryPresentation {
+
+ private static final Logger log = Red5LoggerFactory.
+ getLogger(CreateLibraryPresentation.class, OpenmeetingsVariables.webAppRootKey);
+
public static ConverterProcessResult generateXMLDocument(File targetDirectory, String originalDocument,
String pdfDocument, String swfDocument){
ConverterProcessResult returnMap = new ConverterProcessResult();
@@ -97,7 +104,7 @@
return returnMap;
} catch (Exception err) {
- err.printStackTrace();
+ log.error("[generateXMLDocument]", err);
returnMap.setError(err.getMessage());
returnMap.setExitValue("-1");
return returnMap;
Index: src/org/apache/openmeetings/installation/ImportInitvalues.java
===================================================================
--- src/org/apache/openmeetings/installation/ImportInitvalues.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/installation/ImportInitvalues.java (.../branches/2.1) (revision 1490221)
@@ -303,7 +303,7 @@
// "1" == "EN"
configurationDao.addConfByKey("default_lang_id", cfg.defaultLangId,
- null, "Default System Language ID see language.xml");
+ null, "Default System Language ID see languages.xml");
configurationDao.addConfByKey("swftools_zoom", cfg.swfZoom, null,
"dpi for conversion of PDF to SWF");
@@ -463,6 +463,13 @@
"123",
null,
"A hot key code for the 'give exclusive audio' functionality. Keycode 123 is F12");
+ // mute/unmute audio key code
+ configurationDao
+ .addConfByKey(
+ "mute.keycode",
+ "118",
+ null,
+ "A hot key code for the 'mute/unmute audio' functionality. Keycode 118 is F7");
// system-wide ldap params
configurationDao.addConfByKey("ldap_default_id", "0", null,
@@ -561,7 +568,7 @@
false, // hideFilesExplorer
false, // hideActionsMenu
false, // hideScreenSharing
- false, // hideWhiteboard
+ true, // hideWhiteboard
false, // showMicrophoneStatus
false, // chatModerated
false, // chatOpened
@@ -832,7 +839,7 @@
appointmentCategoryDaoImpl.addAppointmentCategory(new Long(-1),
"default", "default");
} catch (Exception e) {
- log.error("Could not create AppointMentcategories");
+ log.error("Could not create AppointMentcategories", e);
return;
}
@@ -857,7 +864,7 @@
"iCal email");
} catch (Exception e) {
- log.error("Could not create ReminderType");
+ log.error("Could not create ReminderType", e);
return;
}
}
Index: src/org/apache/openmeetings/axis/services/CalendarWebService.java
===================================================================
--- src/org/apache/openmeetings/axis/services/CalendarWebService.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/axis/services/CalendarWebService.java (.../branches/2.1) (revision 1490221)
@@ -370,7 +370,6 @@
}
} catch (Exception err) {
log.error("[updateAppointment]", err);
- err.printStackTrace();
}
return null;
Index: src/org/apache/openmeetings/doc/WebServiceDoclet.java
===================================================================
--- src/org/apache/openmeetings/doc/WebServiceDoclet.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/doc/WebServiceDoclet.java (.../branches/2.1) (revision 1490221)
@@ -26,12 +26,19 @@
import org.apache.velocity.VelocityContext;
import org.apache.velocity.app.Velocity;
+import org.apache.openmeetings.OpenmeetingsVariables;
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
import com.sun.javadoc.ClassDoc;
import com.sun.javadoc.RootDoc;
import com.sun.javadoc.Tag;
public class WebServiceDoclet {
+
+ private static final Logger log = Red5LoggerFactory.
+ getLogger(WebServiceDoclet.class, OpenmeetingsVariables.webAppRootKey);
+
static final String baseTemplatePath = "xdocs";
static final String basePath = "docs";
static final String templateName = "ApiMethodsTemplate.vm";
@@ -97,7 +104,7 @@
} catch (Exception err) {
- err.printStackTrace();
+ log.error("[start]", err);
}
// No error processing done, simply return true.
Index: src/org/apache/openmeetings/Version.java
===================================================================
--- src/org/apache/openmeetings/Version.java (.../tags/2.1RC3) (revision 0)
+++ src/org/apache/openmeetings/Version.java (.../branches/2.1) (revision 1490221)
@@ -0,0 +1,98 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License") + you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openmeetings;
+
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.jar.Attributes;
+import java.util.jar.Manifest;
+
+import org.red5.logging.Red5LoggerFactory;
+import org.slf4j.Logger;
+
+public class Version {
+ private static final Logger log = Red5LoggerFactory.getLogger(Version.class, OpenmeetingsVariables.webAppRootKey);
+ private static final int startedStringLength = 48;
+ private static String version = null;
+ private static String revision = null;
+ private static String buildDate = null;
+
+ private static Attributes getAttributes() throws MalformedURLException, IOException {
+ String jarUrl = Version.class.getResource(Version.class.getSimpleName() + ".class").toString();
+ return new Manifest(new URL(jarUrl.substring(0, jarUrl.indexOf('!')) + "!/META-INF/MANIFEST.MF").openStream()).getMainAttributes();
+ }
+
+ public static String getVersion() {
+ if (version == null) {
+ try {
+ version = getAttributes().getValue("Product-Version");
+ } catch (Exception e) {
+ log.error("[getVersion]", e);
+ }
+ }
+ return version;
+ }
+
+ public static String getRevision() {
+ if (revision == null) {
+ try {
+ revision = getAttributes().getValue("Svn-Revision");
+ } catch (Exception e) {
+ log.error("[getRevision]", e);
+ }
+ }
+ return revision;
+ }
+
+ public static String getBuildDate() {
+ if (buildDate == null) {
+ try {
+ buildDate = getAttributes().getValue("Built-On");
+ } catch (Exception e) {
+ log.error("[getBuildDate]", e);
+ }
+ }
+ return buildDate;
+ }
+
+ private static void getLine(StringBuilder sb, String text, char fill) {
+ sb.append('#');
+ int l = text.length();
+ int headLength = (startedStringLength - l) / 2;
+ for (int i = 0; i < headLength; ++i) {
+ sb.append(fill);
+ }
+ sb.append(text);
+ for (int i = 0; i < (startedStringLength - l - headLength); ++i) {
+ sb.append(fill);
+ }
+ sb.append("#\n");
+ }
+
+ public static void logOMStarted() {
+ StringBuilder sb = new StringBuilder("\n");
+ getLine(sb, "", '#');
+ getLine(sb, "Openmeetings is up", ' ');
+ getLine(sb, getVersion() + " " + getRevision() + " " + getBuildDate(), ' ');
+ getLine(sb, "and ready to use", ' ');
+ getLine(sb, "", '#');
+ log.debug(sb.toString());
+ }
+}
Index: src/org/apache/openmeetings/data/basic/FieldManager.java
===================================================================
--- src/org/apache/openmeetings/data/basic/FieldManager.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/basic/FieldManager.java (.../branches/2.1) (revision 1490221)
@@ -187,7 +187,7 @@
return returnList;
} catch (Exception ex2) {
- log.error("[getConfKey]: " + ex2);
+ log.error("[getConfKey]: ", ex2);
}
return null;
}
@@ -257,7 +257,6 @@
} catch (Exception ex2) {
log.error("[getLabelsByLanguage]: ", ex2);
- ex2.printStackTrace();
}
return null;
}
Index: src/org/apache/openmeetings/data/flvrecord/listener/async/StreamAudioWriter.java
===================================================================
--- src/org/apache/openmeetings/data/flvrecord/listener/async/StreamAudioWriter.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/flvrecord/listener/async/StreamAudioWriter.java (.../branches/2.1) (revision 1490221)
@@ -220,9 +220,6 @@
writer.writeTag(tag);
}
-
- } catch (IOException e) {
- log.error("[packetReceived]", e);
} catch (Exception e) {
log.error("[packetReceived]", e);
}
Index: src/org/apache/openmeetings/data/conference/InvitationManager.java
===================================================================
--- src/org/apache/openmeetings/data/conference/InvitationManager.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/conference/InvitationManager.java (.../branches/2.1) (revision 1490221)
@@ -226,7 +226,7 @@
try {
user = userManager.getUserById(canceling_user_id);
} catch (Exception e) {
- log.error("cancelInvitation Cancelling user cant be retrieved");
+ log.error("cancelInvitation Cancelling user cant be retrieved", e);
return;
}
@@ -271,6 +271,7 @@
} catch (Exception e) {
log.error("Error sending IcalCancelMail for User "
+ member.getEmail() + " : " + e.getMessage());
+ log.error("[cancelInvitation]", e);
}
}
@@ -299,7 +300,7 @@
return message;
} catch (Exception err) {
- log.error("Could not format cancel message");
+ log.error("Could not format cancel message", err);
return "Error formatCancelMessage";
}
}
@@ -346,7 +347,7 @@
return message;
} catch (Exception err) {
- log.error("Could not format cancel message");
+ log.error("Could not format cancel message", err);
return "Error formatCancelMessage";
}
}
@@ -413,6 +414,7 @@
} catch (Exception e) {
log.error("Error sending IcalUpdateMail for User "
+ member.getEmail() + " : " + e.getMessage());
+ log.error("[updateInvitation]", e);
}
}
}
@@ -445,7 +447,7 @@
return message;
} catch (Exception err) {
- log.error("Could not format update subject");
+ log.error("Could not format update subject", err);
return "Error formatUpdateSubject";
}
}
@@ -492,7 +494,7 @@
return message;
} catch (Exception err) {
- log.error("Could not format update message");
+ log.error("Could not format update message", err);
return "Error formatUpdateMessage";
}
}
@@ -709,6 +711,7 @@
return "success";
} catch (Exception e) {
log.error("sendInvitationCancelmail : " + e.getMessage());
+ log.error("[sendInvitationCancelmail]", e);
}
return null;
@@ -734,6 +737,7 @@
return "success";
} catch (Exception e) {
log.error("sendInvitationUpdateMail : " + e.getMessage());
+ log.error("[sendInvitationUpdateMail]", e);
}
return null;
@@ -1186,7 +1190,7 @@
}
} catch (Exception err) {
-
+ log.error("[updateInvitationByAppointment]", err);
}
}
}
Index: src/org/apache/openmeetings/data/conference/dao/RoomModeratorsDao.java
===================================================================
--- src/org/apache/openmeetings/data/conference/dao/RoomModeratorsDao.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/conference/dao/RoomModeratorsDao.java (.../branches/2.1) (revision 1490221)
@@ -113,7 +113,6 @@
return query.getResultList();
} catch (Exception ex2) {
log.error("[getRoomModeratorByRoomId] ", ex2);
- ex2.printStackTrace();
}
return null;
}
@@ -128,7 +127,6 @@
return query.getResultList();
} catch (Exception ex2) {
log.error("[getRoomModeratorByUserAndRoomId] ", ex2);
- ex2.printStackTrace();
}
return null;
}
@@ -211,7 +209,6 @@
} catch (Exception ex2) {
log.error("[addRoomModeratorByUserList] ", ex2);
- ex2.printStackTrace();
}
}
@@ -292,7 +289,6 @@
} catch (Exception ex2) {
log.error("[updateRoomModeratorByUserList] ", ex2);
- ex2.printStackTrace();
}
}
Index: src/org/apache/openmeetings/data/conference/RoomManager.java
===================================================================
--- src/org/apache/openmeetings/data/conference/RoomManager.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/conference/RoomManager.java (.../branches/2.1) (revision 1490221)
@@ -544,7 +544,6 @@
}
} catch (Exception ex2) {
log.error("[getPublicRoomsWithoutType] ", ex2);
- ex2.printStackTrace();
}
return null;
}
@@ -917,7 +916,6 @@
}
} catch (Exception ex2) {
log.error("[getPublicRoomsWithoutType] ", ex2);
- ex2.printStackTrace();
}
return null;
}
Index: src/org/apache/openmeetings/data/calendar/daos/AppointmentCategoryDao.java
===================================================================
--- src/org/apache/openmeetings/data/calendar/daos/AppointmentCategoryDao.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/calendar/daos/AppointmentCategoryDao.java (.../branches/2.1) (revision 1490221)
@@ -67,7 +67,7 @@
return appointCategory;
} catch (Exception ex2) {
- log.error("[getAppointmentCategoryById]: " + ex2);
+ log.error("[getAppointmentCategoryById]: ", ex2);
}
return null;
}
@@ -140,7 +140,7 @@
}
return categoryId;
} catch (Exception ex2) {
- log.error("[deleteAppointmentCategory]: " + ex2);
+ log.error("[deleteAppointmentCategory]: ", ex2);
}
return null;
}
@@ -159,7 +159,7 @@
return listAppointmentCategory;
} catch (Exception ex2) {
- log.error("[AppointmentCategory]: " + ex2);
+ log.error("[AppointmentCategory]: ", ex2);
}
return null;
}
Index: src/org/apache/openmeetings/data/calendar/daos/AppointmentDao.java
===================================================================
--- src/org/apache/openmeetings/data/calendar/daos/AppointmentDao.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/calendar/daos/AppointmentDao.java (.../branches/2.1) (revision 1490221)
@@ -698,7 +698,7 @@
}
return appointmentId;
} catch (Exception ex2) {
- log.error("[deleteAppointement]: " + ex2);
+ log.error("[deleteAppointement]: ", ex2);
}
return null;
}
Index: src/org/apache/openmeetings/data/calendar/daos/AppointmentReminderTypDao.java
===================================================================
--- src/org/apache/openmeetings/data/calendar/daos/AppointmentReminderTypDao.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/calendar/daos/AppointmentReminderTypDao.java (.../branches/2.1) (revision 1490221)
@@ -140,7 +140,7 @@
return typId;
} catch (Exception ex2) {
- log.error("[deleteAppointmentReminderTyp]: " + ex2);
+ log.error("[deleteAppointmentReminderTyp]: ", ex2);
}
return null;
}
Index: src/org/apache/openmeetings/data/user/UserManager.java
===================================================================
--- src/org/apache/openmeetings/data/user/UserManager.java (.../tags/2.1RC3) (revision 1490221)
+++ src/org/apache/openmeetings/data/user/UserManager.java (.../branches/2.1) (revision 1490221)
@@ -151,7 +151,7 @@
return sresult;
}
} catch (Exception ex2) {
- log.error("[getUsersList] " + ex2);
+ log.error("[getUsersList] ", ex2);
}
return null;
}
@@ -192,7 +192,6 @@
} catch (Exception ex2) {
log.error("[getAllUserByRange] ", ex2);
- ex2.printStackTrace();
}
return null;
}
Index: src/usual_template.vm
===================================================================
--- src/usual_template.vm (.../tags/2.1RC3) (revision 1490221)
+++ src/usual_template.vm (.../branches/2.1) (revision 1490221)
@@ -85,7 +85,7 @@
<body>
<script type="text/javascript">
- lz.embed.swf({url: '$SWF_URL?$SWF_PARAMS', allowfullscreen: 'true', bgcolor: '#ffffff', width: '100%', height: '100%', id: 'lzapp', accessible: 'false'});
+ lz.embed.swf({url: '$SWF_URL&#063;rev=$REVISION&amp;$SWF_PARAMS', allowfullscreen: 'true', bgcolor: '#ffffff', width: '100%', height: '100%', id: 'lzapp', accessible: 'false'});
lz.embed.lzapp.onloadstatus = function loadstatus(p) {
// called with a percentage (0-100) indicating load progress
@@ -108,6 +108,7 @@
pluginspage="http://www.macromedia.com/go/getflashplayer"
align="middle" height="100%" width="100%"></div>
-->
+ <div id="loading" style="z-index: 666666; position: absolute; top: 50%; left: 50%;"><img src="images/ajax-loader.gif"/></div>
<noscript>Please enable JavaScript in order to use this
application.</noscript>
</body>
Index: docs/ConferenceRoomLayoutOptions.html
===================================================================
--- docs/ConferenceRoomLayoutOptions.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/ConferenceRoomLayoutOptions.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/team-list-ru.html
===================================================================
--- docs/team-list-ru.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/team-list-ru.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/commercial-support.html
===================================================================
--- docs/commercial-support.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/commercial-support.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/HotKeys.html
===================================================================
--- docs/HotKeys.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/HotKeys.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
@@ -685,6 +693,20 @@
</td>
</tr>
+ <tr>
+ <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left" style="color: black; font-size: small; font-family: arial, helvetica, sanserif;">
+ F7 (code 118)
+ </td>
+ <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left" style="color: black; font-size: small; font-family: arial, helvetica, sanserif;">
+ A hot key code for the 'mute/unmute audio' functionality.
+ </td>
+ <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left" style="color: black; font-size: small; font-family: arial, helvetica, sanserif;">
+ Yes
+ </td>
+ <td bgcolor="#a0ddf0" colspan="" rowspan="" valign="top" align="left" style="color: black; font-size: small; font-family: arial, helvetica, sanserif;">
+ mute.keycode
+ </td>
+ </tr>
</table>
</blockquote>
</td></tr>
Index: docs/Upgrade.html
===================================================================
--- docs/Upgrade.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/Upgrade.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/MySQLConfig.html
===================================================================
--- docs/MySQLConfig.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/MySQLConfig.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/FFMPEGVersionSwitch.html
===================================================================
--- docs/FFMPEGVersionSwitch.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/FFMPEGVersionSwitch.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/RecommendedHardwareList.html
===================================================================
--- docs/RecommendedHardwareList.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/RecommendedHardwareList.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/Internationalisation.html
===================================================================
--- docs/Internationalisation.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/Internationalisation.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/installation.html
===================================================================
--- docs/installation.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/installation.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
@@ -930,10 +938,10 @@
<ul>
<li>
Use the Debug-Application: Enter in your browser
- <a href="http://$RED-HOST:$RED5-PORT/openmeetings/maindebug.lzx.lzr=swf8.swf" rel="nofollow">http://$RED-HOST:$RED5-PORT/openmeetings/maindebug.lzx.lzr=maindebug.as3.swf11.swf
+ <a href="http://$RED-HOST:$RED5-PORT/openmeetings/?swf=maindebug.as3.swf11.swf" rel="nofollow">http://$RED-HOST:$RED5-PORT/openmeetings/?swf=maindebug.as3.swf11.swf
</a>
for example
- <a href="http://localhost:5080/openmeetings/maindebug.lzx.lzr=swf8.swf" rel="nofollow">http://localhost:5080/openmeetings/maindebug.lzx.lzr=maindebug.as3.swf11.swf
+ <a href="http://localhost:5080/openmeetings/?swf=maindebug.as3.swf11.swf" rel="nofollow">http://localhost:5080/openmeetings/?swf=maindebug.as3.swf11.swf
</a>
</li>
<li>If you have Problems with conversion-jobs check your Red5-Log
Index: docs/JVMPerformanceTuning.html
===================================================================
--- docs/JVMPerformanceTuning.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/JVMPerformanceTuning.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/JiraPlugin.html
===================================================================
--- docs/JiraPlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/JiraPlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/WebcamResolutions.html
===================================================================
--- docs/WebcamResolutions.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/WebcamResolutions.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/GeneralConfiguration.html
===================================================================
--- docs/GeneralConfiguration.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/GeneralConfiguration.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/SakaiPlugin.html
===================================================================
--- docs/SakaiPlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/SakaiPlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/CalendarAndTimezone.html
===================================================================
--- docs/CalendarAndTimezone.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/CalendarAndTimezone.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/themes-and-branding.html
===================================================================
--- docs/themes-and-branding.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/themes-and-branding.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/red5sip-integration_2.0.html
===================================================================
--- docs/red5sip-integration_2.0.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/red5sip-integration_2.0.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/mail-lists.html
===================================================================
--- docs/mail-lists.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/mail-lists.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/WebsiteGuide.html
===================================================================
--- docs/WebsiteGuide.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/WebsiteGuide.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/BitrixPlugin.html
===================================================================
--- docs/BitrixPlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/BitrixPlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/license.html
===================================================================
--- docs/license.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/license.html (.../branches/2.1) (revision 1490221)
@@ -185,6 +185,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -515,6 +521,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/demo.html
===================================================================
--- docs/demo.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/demo.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/IBMDB2Config.html
===================================================================
--- docs/IBMDB2Config.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/IBMDB2Config.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/JUnitTesting.html
===================================================================
--- docs/JUnitTesting.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/JUnitTesting.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/CustomRoomTypeHowTo.html
===================================================================
--- docs/CustomRoomTypeHowTo.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/CustomRoomTypeHowTo.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/downloads.html
===================================================================
--- docs/downloads.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/downloads.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
@@ -642,9 +650,7 @@
<blockquote>
<div>
All downloads can be verified using the Apache OpenMeetings code
- signing
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/KEYS">KEYS</a>
- .
+ signing <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/KEYS">KEYS</a>.
</div>
<p>
All are available for download as source and binary.
@@ -658,21 +664,21 @@
<tr><td>
<blockquote>
<p>
- Apache Openmeetings Incubating 2.0
+ Apache Openmeetings 2.1.0
</p>
<ul>
<li>
Binaries:
<ul>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.zip.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.zip">apache-openmeetings-2.1.0.zip</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.zip.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.zip.md5">[MD5]</a>
</li>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108.tar.gz.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.tar.gz">apache-openmeetings-2.1.0.tar.gz</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.tar.gz.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/bin/apache-openmeetings-2.1.0.tar.gz.md5">[MD5]</a>
</li>
</ul>
</li>
@@ -680,14 +686,14 @@
Sources:
<ul>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.zip.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.zip">apache-openmeetings-2.1.0-src.zip</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.zip.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.zip.md5">[MD5]</a>
</li>
<li>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz">apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz.sig">[SIG]</a>
- <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/apache-openmeetings-incubating-2.0.0.r1361497-14-07-2012_1108-src.tar.gz.md5">[MD5]</a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.tar.gz">apache-openmeetings-2.1.0-src.tar.gz</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.tar.gz.asc">[SIG]</a>
+ <a href="http://www.apache.org/dist/openmeetings/2.1.0/src/apache-openmeetings-2.1.0-src.tar.gz.md5">[MD5]</a>
</li>
</ul>
</li>
@@ -695,6 +701,22 @@
</blockquote>
</td></tr>
<tr><td><br/></td></tr>
+ </table>
+ <table border="0" cellspacing="0" cellpadding="0" width="100%">
+ <tr><td bgcolor="#EFEFEF">
+ <font color="#000000" face="arial,helvetica,sanserif">
+ <a name="Previous Official Releases"><strong>Previous Official Releases</strong></a>
+ </font>
+ </td></tr>
+ <tr><td>
+ <blockquote>
+ <p>
+ Apache Openmeetings Incubating 2.0 is available here:
+ <a href="http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating/">http://archive.apache.org/dist/incubator/openmeetings/2.0-incubating</a>
+ </p>
+ </blockquote>
+ </td></tr>
+ <tr><td><br/></td></tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr><td bgcolor="#EFEFEF">
Index: docs/LdapAndADS.html
===================================================================
--- docs/LdapAndADS.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/LdapAndADS.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/PostgresConfig.html
===================================================================
--- docs/PostgresConfig.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/PostgresConfig.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/ApacheDerbyConfig.html
===================================================================
--- docs/ApacheDerbyConfig.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/ApacheDerbyConfig.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/MoodlePlugin.html
===================================================================
--- docs/MoodlePlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/MoodlePlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/ConfluencePlugin.html
===================================================================
--- docs/ConfluencePlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/ConfluencePlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/GetVersionInfo.html
===================================================================
--- docs/GetVersionInfo.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/GetVersionInfo.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/EditTemplates.html
===================================================================
--- docs/EditTemplates.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/EditTemplates.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/svn.html
===================================================================
--- docs/svn.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/svn.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/RestAPISample.html
===================================================================
--- docs/RestAPISample.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/RestAPISample.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/documentation.html
===================================================================
--- docs/documentation.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/documentation.html (.../branches/2.1) (revision 1490221)
@@ -185,6 +185,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -515,6 +521,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/red5sip-integration_2.1.html
===================================================================
--- docs/red5sip-integration_2.1.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/red5sip-integration_2.1.html (.../branches/2.1) (revision 1490221)
@@ -184,6 +184,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -514,6 +520,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
@@ -735,7 +743,7 @@
<blockquote>
<i>
sudo mkdir /usr/src/asterisk &amp;&amp; cd /usr/src/asterisk<br />
- sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11.2.1.tar.gz<br />
+ sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-11.2.1.tar.gz<br />
sudo tar -xvzf asterisk-11.2.1.tar.gz<br />
cd ./asterisk-11.2.1<br />
sudo make clean<br />
Index: docs/CustomCryptMechanism.html
===================================================================
--- docs/CustomCryptMechanism.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/CustomCryptMechanism.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/BuildInstructions.html
===================================================================
--- docs/BuildInstructions.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/BuildInstructions.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/voip-sip-integration.html
===================================================================
--- docs/voip-sip-integration.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/voip-sip-integration.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/Dashboard.html
===================================================================
--- docs/Dashboard.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/Dashboard.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/LanguageEditor.html
===================================================================
--- docs/LanguageEditor.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/LanguageEditor.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/RestrictedAccess.html
===================================================================
--- docs/RestrictedAccess.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/RestrictedAccess.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/WebappNamePath.html
===================================================================
--- docs/WebappNamePath.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/WebappNamePath.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/Navigation.html
===================================================================
--- docs/Navigation.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/Navigation.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/JoomlaPlugin.html
===================================================================
--- docs/JoomlaPlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/JoomlaPlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/RedminePlugin.html
===================================================================
--- docs/RedminePlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/RedminePlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/OpenOfficeConverter.html
===================================================================
--- docs/OpenOfficeConverter.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/OpenOfficeConverter.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/PortSettings.html
===================================================================
--- docs/PortSettings.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/PortSettings.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/ManualTesting.html
===================================================================
--- docs/ManualTesting.html (.../tags/2.1RC3) (revision 0)
+++ docs/ManualTesting.html (.../branches/2.1) (revision 1490221)
@@ -0,0 +1,1051 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+
+<!--
+Copyright 1999-2004 The Apache Software Foundation
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+
+<!-- Content Stylesheet for Site -->
+
+
+<!-- start the processing -->
+ <!-- ====================================================================== -->
+ <!-- GENERATED FILE, DO NOT EDIT, EDIT THE XML FILE IN xdocs INSTEAD! -->
+ <!-- Main Page Section -->
+ <!-- ====================================================================== -->
+ <html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+
+ <meta name="author" content="
+ OpenMeetings Team
+ ">
+ <meta name="email" content="iarkh@apache.org">
+
+
+
+
+ <title>Apache OpenMeetings - Manual Testing</title>
+ <link rel="stylesheet" type="text/css" href="css/openmeetings.css">
+ <link rel="stylesheet" type="text/css" href="css/jquery-ui.css">
+ <link rel="stylesheet" type="text/css" href="css/coin-slider-styles.css">
+ <link rel="stylesheet" type="text/css" href="css/colorbox.css" />
+
+ <!-- Add jQuery library -->
+ <script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
+
+ <!-- Add coinslider plugins -->
+ <script type="text/javascript" src="js/coin-slider.min.js"></script>
+
+ <!-- Add colorbox plugin -->
+ <script type="text/javascript" src="js/jquery.colorbox.js"></script>
+
+ <script src="js/jquery.ui.core.js"></script>
+ <script src="js/jquery.ui.widget.js"></script>
+
+ <script src="js/jquery.ui.accordion.js"></script>
+
+ <script>
+ $(function() {
+ $( "#accordion" ).accordion({
+ autoHeight: false,
+ navigation: true,
+ navigationFilter: function () {
+ var sidebarHrefArray = this.href.split("/");
+ var sideBarLastString = sidebarHrefArray[sidebarHrefArray.length - 1].toLowerCase();
+
+ if (sideBarLastString.indexOf("#") == -1) {
+ return false;
+ }
+
+ /* document.location.href */
+ var currentSection = "";
+
+ var currentLocation = "";
+ var currentLink = "";
+ if (false) {
+
+ }
+
+ else if (document.location.href.indexOf("/index.html") > 0) {
+ currentLocation = "General";
+ currentLink = "/index.html".substr(1, "/index.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/license.html") > 0) {
+ currentLocation = "General";
+ currentLink = "/license.html".substr(1, "/license.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("http://www.apache.org/") > 0) {
+ currentLocation = "General";
+ currentLink = "http://www.apache.org/".substr(1, "http://www.apache.org/".length);
+ }
+
+
+ else if (document.location.href.indexOf("/downloads.html") > 0) {
+ currentLocation = "General";
+ currentLink = "/downloads.html".substr(1, "/downloads.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/commercial-support.html") > 0) {
+ currentLocation = "General";
+ currentLink = "/commercial-support.html".substr(1, "/commercial-support.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/installation.html") > 0) {
+ currentLocation = "InstallationandUpgrade";
+ currentLink = "/installation.html".substr(1, "/installation.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/Upgrade.html") > 0) {
+ currentLocation = "InstallationandUpgrade";
+ currentLink = "/Upgrade.html".substr(1, "/Upgrade.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools") > 0) {
+ currentLocation = "InstallationandUpgrade";
+ currentLink = "https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools".substr(1, "https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools".length);
+ }
+
+
+ else if (document.location.href.indexOf("/CommandLineAdmin.html") > 0) {
+ currentLocation = "InstallationandUpgrade";
+ currentLink = "/CommandLineAdmin.html".substr(1, "/CommandLineAdmin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/get-involved.html") > 0) {
+ currentLocation = "Community";
+ currentLink = "/get-involved.html".substr(1, "/get-involved.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/team-list.html") > 0) {
+ currentLocation = "Community";
+ currentLink = "/team-list.html".substr(1, "/team-list.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/mail-lists.html") > 0) {
+ currentLocation = "Community";
+ currentLink = "/mail-lists.html".substr(1, "/mail-lists.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("http://cwiki.apache.org/confluence/display/OPENMEETINGS/") > 0) {
+ currentLocation = "Community";
+ currentLink = "http://cwiki.apache.org/confluence/display/OPENMEETINGS/".substr(1, "http://cwiki.apache.org/confluence/display/OPENMEETINGS/".length);
+ }
+
+
+ else if (document.location.href.indexOf("/svn.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/svn.html".substr(1, "/svn.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("http://issues.apache.org/jira/browse/OPENMEETINGS") > 0) {
+ currentLocation = "Development";
+ currentLink = "http://issues.apache.org/jira/browse/OPENMEETINGS".substr(1, "http://issues.apache.org/jira/browse/OPENMEETINGS".length);
+ }
+
+
+ else if (document.location.href.indexOf("/dependencies.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/dependencies.html".substr(1, "/dependencies.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/BuildInstructions.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/BuildInstructions.html".substr(1, "/BuildInstructions.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/JUnitTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/JUnitTesting.html".substr(1, "/JUnitTesting.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/WebsiteGuide.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/WebsiteGuide.html".substr(1, "/WebsiteGuide.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/SoapRestAPI.html") > 0) {
+ currentLocation = "Integration";
+ currentLink = "/SoapRestAPI.html".substr(1, "/SoapRestAPI.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/RestAPISample.html") > 0) {
+ currentLocation = "Integration";
+ currentLink = "/RestAPISample.html".substr(1, "/RestAPISample.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/LdapAndADS.html") > 0) {
+ currentLocation = "Integration";
+ currentLink = "/LdapAndADS.html".substr(1, "/LdapAndADS.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/voip-sip-integration.html") > 0) {
+ currentLocation = "Integration";
+ currentLink = "/voip-sip-integration.html".substr(1, "/voip-sip-integration.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/ErrorsTable.html") > 0) {
+ currentLocation = "Integration";
+ currentLink = "/ErrorsTable.html".substr(1, "/ErrorsTable.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/MoodlePlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/MoodlePlugin.html".substr(1, "/MoodlePlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/SakaiPlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/SakaiPlugin.html".substr(1, "/SakaiPlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/JiraPlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/JiraPlugin.html".substr(1, "/JiraPlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/JoomlaPlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/JoomlaPlugin.html".substr(1, "/JoomlaPlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/DrupalPlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/DrupalPlugin.html".substr(1, "/DrupalPlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/BitrixPlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/BitrixPlugin.html".substr(1, "/BitrixPlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/ConfluencePlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/ConfluencePlugin.html".substr(1, "/ConfluencePlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/SugarCRMPlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/SugarCRMPlugin.html".substr(1, "/SugarCRMPlugin.html".length);
+ }
+
+
+ else if (document.location.href.indexOf("/RedminePlugin.html") > 0) {
+ currentLocation = "Plugins";
+ currentLink = "/RedminePlugin.html".substr(1, "/RedminePlugin.html".length);
+ }
+
+ else if (document.location.href.indexOf("/ApacheDerbyConfig.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/ApacheDerbyConfig.html".substr(1, "/ApacheDerbyConfig.html".length);
+ }
+ else if (document.location.href.indexOf("/IBMDB2Config.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/IBMDB2Config.html".substr(1, "/IBMDB2Config.html".length);
+ }
+ else if (document.location.href.indexOf("/OracleConfig.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/OracleConfig.html".substr(1, "/OracleConfig.html".length);
+ }
+ else if (document.location.href.indexOf("/MySQLConfig.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/MySQLConfig.html".substr(1, "/MySQLConfig.html".length);
+ }
+ else if (document.location.href.indexOf("/PostgresConfig.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/PostgresConfig.html".substr(1, "/PostgresConfig.html".length);
+ }
+ else if (document.location.href.indexOf("/Internationalisation.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/Internationalisation.html".substr(1, "/Internationalisation.html".length);
+ }
+ else if (document.location.href.indexOf("/LanguageEditor.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/LanguageEditor.html".substr(1, "/LanguageEditor.html".length);
+ }
+ else if (document.location.href.indexOf("/TimeZoneHandling.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/TimeZoneHandling.html".substr(1, "/TimeZoneHandling.html".length);
+ }
+ else if (document.location.href.indexOf("/EditTemplates.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/EditTemplates.html".substr(1, "/EditTemplates.html".length);
+ }
+ else if (document.location.href.indexOf("/PortSettings.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/PortSettings.html".substr(1, "/PortSettings.html".length);
+ }
+ else if (document.location.href.indexOf("/JVMPerformanceTuning.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/JVMPerformanceTuning.html".substr(1, "/JVMPerformanceTuning.html".length);
+ }
+ else if (document.location.href.indexOf("/themes-and-branding.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/themes-and-branding.html".substr(1, "/themes-and-branding.html".length);
+ }
+ else if (document.location.href.indexOf("/Dashboard.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/Dashboard.html".substr(1, "/Dashboard.html".length);
+ }
+ else if (document.location.href.indexOf("/WebcamResolutions.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/WebcamResolutions.html".substr(1, "/WebcamResolutions.html".length);
+ }
+ else if (document.location.href.indexOf("/ConferenceRoomLayoutOptions.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/ConferenceRoomLayoutOptions.html".substr(1, "/ConferenceRoomLayoutOptions.html".length);
+ }
+ else if (document.location.href.indexOf("/HotKeys.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/HotKeys.html".substr(1, "/HotKeys.html".length);
+ }
+ else if (document.location.href.indexOf("/WebappNamePath.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/WebappNamePath.html".substr(1, "/WebappNamePath.html".length);
+ }
+ else if (document.location.href.indexOf("/Navigation.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/Navigation.html".substr(1, "/Navigation.html".length);
+ }
+ else if (document.location.href.indexOf("/CalendarAndTimezone.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/CalendarAndTimezone.html".substr(1, "/CalendarAndTimezone.html".length);
+ }
+ else if (document.location.href.indexOf("/CustomRoomTypeHowTo.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/CustomRoomTypeHowTo.html".substr(1, "/CustomRoomTypeHowTo.html".length);
+ }
+ else if (document.location.href.indexOf("/CustomCryptMechanism.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/CustomCryptMechanism.html".substr(1, "/CustomCryptMechanism.html".length);
+ }
+ else if (document.location.href.indexOf("/GeneralConfiguration.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/GeneralConfiguration.html".substr(1, "/GeneralConfiguration.html".length);
+ }
+ else if (document.location.href.indexOf("/RestrictedAccess.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/RestrictedAccess.html".substr(1, "/RestrictedAccess.html".length);
+ }
+ else if (document.location.href.indexOf("/RTMPSAndHTTPS.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/RTMPSAndHTTPS.html".substr(1, "/RTMPSAndHTTPS.html".length);
+ }
+ else if (document.location.href.indexOf("/OpenOfficeConverter.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/OpenOfficeConverter.html".substr(1, "/OpenOfficeConverter.html".length);
+ }
+ else if (document.location.href.indexOf("/FFMPEGVersionSwitch.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/FFMPEGVersionSwitch.html".substr(1, "/FFMPEGVersionSwitch.html".length);
+ }
+ else if (document.location.href.indexOf("/Clustering.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/Clustering.html".substr(1, "/Clustering.html".length);
+ }
+ else if (document.location.href.indexOf("/GetVersionInfo.html") > 0) {
+ currentLocation = "Configuration";
+ currentLink = "/GetVersionInfo.html".substr(1, "/GetVersionInfo.html".length);
+ }
+
+ currentLink = currentLink.toLowerCase();
+ currentLocation = currentLocation.toLowerCase();
+
+ return sideBarLastString == currentLink+"#"+currentLocation;
+ }
+ });
+ });
+ </script>
+
+ <script type="text/javascript">
+ $(document).ready(function() {
+ $('.fancybox-buttons').colorbox({rel:'fancybox-buttons',width:"75%", height:"75%"});
+ $('#accordion a').each(function() {
+ var a = $(this);
+ var href = a.attr("href");
+ if (href.indexOf("#") == -1) {
+ var compareIt = href.substr(2, href.length);
+ if (document.location.href.indexOf(compareIt)!= -1) {
+ a.addClass('active');
+ }
+ }
+ });
+ $('#coin-slider').coinslider({ width: 640,height: 400, delay: 4000 });
+ });
+ </script>
+
+ <style type="text/css">
+ .fancybox-custom .fancybox-outer {
+ box-shadow: 0 0 50px #222;
+ }
+ </style>
+ </head>
+
+ <body bgcolor="#ffffff" text="#000000" link="#123465" vlink="#123465" alink="#000000">
+ <div class="mainbody" style="width: 100%;">
+ <div class="superbody" style="width: 100%;">
+ <table border="0" width="100%" cellspacing="0">
+ <!-- TOP IMAGE -->
+ <tr>
+ <td align="left">
+<a href="http://openmeetings.apache.org/"><img src="./images/logo-2.jpg" alt="Apache OpenMeetings" border="0"/></a>
+</td>
+ <td width="80%" align="right" valign="top" >
+ <a href="demo.html">Demo</a>
+ <span>|</span>
+ <a href="downloads.html" target="_PARENT">Download</a>
+ <span>|</span>
+ <a href="installation.html" target="_PARENT">Installation</a>
+ <span>|</span>
+ <a href="https://cwiki.apache.org/confluence/display/OPENMEETINGS" target="_BLANK">Wiki</a>
+ <span>&nbsp;</span>
+</td>
+ </tr>
+ </table>
+ <table border="0" width="100%" cellspacing="4">
+ <tr><td colspan="2">
+ <hr noshade="noshade" size="1"/>
+ </td></tr>
+
+ <tr>
+ <!-- LEFT SIDE NAVIGATION -->
+ <td width="20%" valign="top" nowrap="nowrap">
+
+ <!-- special ACon Logo - leave here for next time
+ <a href="http://apachecon.com/2005/US/">
+ <img src="http://apache.org/images/ac2005us_blue_125x125.jpg" height="125"
+ width="125" border="0" alt="ApacheCon US 2005" />
+ </a> -->
+
+ <!-- regular menu -->
+
+
+ <!-- ============================================================ -->
+ <div id="accordion" style="width: 100%">
+
+ <h3><a href="#General">General</a></h3>
+ <div>
+ <a href="./index.html">Home</a>
+<br/>
+ <a href="./license.html">License</a>
+<br/>
+ <a href="http://www.apache.org/">ASF</a>
+<br/>
+ <a href="./downloads.html">Downloads</a>
+<br/>
+ <a href="./commercial-support.html">Commercial Support</a>
+<br/>
+ </div>
+ <h3><a href="#InstallationandUpgrade">Installation and Upgrade</a></h3>
+ <div>
+ <a href="./installation.html">Installation</a>
+<br/>
+ <a href="./Upgrade.html">Upgrade</a>
+<br/>
+ <a href=".https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools">Tutorials</a>
+<br/>
+ <a href="./CommandLineAdmin.html">Command Line Admin</a>
+<br/>
+ </div>
+ <h3><a href="#Community">Community</a></h3>
+ <div>
+ <a href="./get-involved.html">Get Involved</a>
+<br/>
+ <a href="./team-list.html">Committers</a>
+<br/>
+ <a href="./mail-lists.html">Mailing Lists</a>
+<br/>
+ <a href="http://cwiki.apache.org/confluence/display/OPENMEETINGS/">Wiki</a>
+<br/>
+ </div>
+ <h3><a href="#Development">Development</a></h3>
+ <div>
+ <a href="./svn.html">Source Code</a>
+<br/>
+ <a href="http://issues.apache.org/jira/browse/OPENMEETINGS">Bugs / Issues (JIRA)</a>
+<br/>
+ <a href="./dependencies.html">Dependencies</a>
+<br/>
+ <a href="./BuildInstructions.html">Build Instructions</a>
+<br/>
+ <a href="./JUnitTesting.html">JUnit Testing</a>
+<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
+ <a href="./ReleaseGuide.html">Release Guide</a>
+<br/>
+ <a href="./WebsiteGuide.html">Website Guide</a>
+<br/>
+ </div>
+ <h3><a href="#Integration">Integration</a></h3>
+ <div>
+ <a href="./SoapRestAPI.html">SOAP/REST API</a>
+<br/>
+ <a href="./RestAPISample.html">REST API Sample</a>
+<br/>
+ <a href="./LdapAndADS.html">Ldap and ADS</a>
+<br/>
+ <a href="./voip-sip-integration.html">VoIP and SIP</a>
+<br/>
+ <a href="./ErrorsTable.html">Errors table</a>
+<br/>
+ </div>
+ <h3><a href="#Plugins">Plugins</a></h3>
+ <div>
+ <a href="./MoodlePlugin.html">Moodle Plugin</a>
+<br/>
+ <a href="./SakaiPlugin.html">Sakai Plugin</a>
+<br/>
+ <a href="./JiraPlugin.html">Jira Plugin</a>
+<br/>
+ <a href="./JoomlaPlugin.html">Joomla Plugin</a>
+<br/>
+ <a href="./DrupalPlugin.html">Drupal Plugin</a>
+<br/>
+ <a href="./BitrixPlugin.html">Bitrix Plugin</a>
+<br/>
+ <a href="./ConfluencePlugin.html">Confluence Plugin</a>
+<br/>
+ <a href="./SugarCRMPlugin.html">SugarCRM Plugin</a>
+<br/>
+ <a href="./RedminePlugin.html">Redmine Plugin</a>
+<br/>
+ </div>
+ <h3><a href="#Configuration">Configuration</a></h3>
+ <div>
+ <b>DB Sample Configurations</b><br/>
+ <a href="./ApacheDerbyConfig.html">Apache Derby</a>
+<br/>
+ <a href="./IBMDB2Config.html">IBM DB2</a>
+<br/>
+ <a href="./OracleConfig.html">Oracle</a>
+<br/>
+ <a href="./MySQLConfig.html">MySQL</a>
+<br/>
+ <a href="./PostgresConfig.html">Postgres</a>
+<br/>
+ <b>Localization and languages</b><br/>
+ <a href="./Internationalisation.html">Internationalisation</a>
+<br/>
+ <a href="./LanguageEditor.html">LanguageEditor</a>
+<br/>
+ <a href="./TimeZoneHandling.html">TimeZoneHandling</a>
+<br/>
+ <a href="./EditTemplates.html">EditTemplates</a>
+<br/>
+ <b>NAT Port Settings</b><br/>
+ <a href="./PortSettings.html">Port settings</a>
+<br/>
+ <b>Performance</b><br/>
+ <a href="./JVMPerformanceTuning.html">JVM performance tuning</a>
+<br/>
+ <b>User Interface</b><br/>
+ <a href="./themes-and-branding.html">Themes</a>
+<br/>
+ <a href="./Dashboard.html">Dashboard</a>
+<br/>
+ <a href="./WebcamResolutions.html">Webcam resolutions</a>
+<br/>
+ <a href="./ConferenceRoomLayoutOptions.html">Room layout options</a>
+<br/>
+ <a href="./HotKeys.html">Hot Keys</a>
+<br/>
+ <b>Customization</b><br/>
+ <a href="./WebappNamePath.html">Webapp name/path</a>
+<br/>
+ <a href="./Navigation.html">Navigation</a>
+<br/>
+ <a href="./CalendarAndTimezone.html">Calendar and timezone</a>
+<br/>
+ <a href="./CustomRoomTypeHowTo.html">Custom room type</a>
+<br/>
+ <a href="./CustomCryptMechanism.html">Custom ctypt mechanism</a>
+<br/>
+ <a href="./GeneralConfiguration.html">General Configuration</a>
+<br/>
+ <b>Security</b><br/>
+ <a href="./RestrictedAccess.html">Restricted Access</a>
+<br/>
+ <a href="./RTMPSAndHTTPS.html">RTMPS and HTTPS</a>
+<br/>
+ <b>Converters</b><br/>
+ <a href="./OpenOfficeConverter.html">OpenOffice Converter</a>
+<br/>
+ <a href="./FFMPEGVersionSwitch.html">FFMPEG Version Switch</a>
+<br/>
+ <b>Clustering</b><br/>
+ <a href="./Clustering.html">Clustering</a>
+<br/>
+ <b>Misc</b><br/>
+ <a href="./GetVersionInfo.html">Get version info</a>
+<br/>
+ </div>
+
+ </div>
+
+ <br/>
+
+ </td>
+ <td width="80%" align="left" valign="top">
+ <table border="0" cellspacing="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr><td ><!-- bgcolor="#EEEEEE" -->
+ <font color="#000000" face="verdana,arial,helvetica,sanserif">
+ <a name="Introduction"><strong>Introduction</strong></a>
+ </font>
+ <hr style="width:100%; color:#999999; background-color:#999999; height:1px; border:0px;"/>
+ </td></tr>
+ <tr><td>
+ <blockquote>
+ <p>
+ Below is a test plan for the OpenMeetings 2.1 pre-release testing.
+ </p>
+ </blockquote>
+ </td></tr>
+ <tr><td><br/></td></tr>
+ </table>
+ <table border="0" cellspacing="0" cellpadding="0" cellspacing="0" width="100%">
+ <tr><td ><!-- bgcolor="#EEEEEE" -->
+ <font color="#000000" face="verdana,arial,helvetica,sanserif">
+ <a name="Details"><strong>Details</strong></a>
+ </font>
+ <hr style="width:100%; color:#999999; background-color:#999999; height:1px; border:0px;"/>
+ </td></tr>
+ <tr><td>
+ <blockquote>
+ <ol>
+ <li>
+ <b>User GUI tests</b>
+ <ol>
+ <li>
+ Login/logout
+ <ol>
+ <li>Password recovering </li>
+ <li>Self-registering </li>
+ <li>"Visit Apache OpenMeetings" link </li>
+ <li>Enter wrong login/password </li>
+ <li>Enter correct login/password </li>
+ <li>Exit the system by click the Exit button </li>
+ </ol>
+ </li>
+ <li>
+ Dashboard
+ <ol>
+ <li>Correct user info in the upper left corner </li>
+ <li>Links in the "Help and support" section </li>
+ <li>It should be possible to enter user’s room from the dashboard </li>
+ <li>Room details should be shown correctly in the "Rooms in this section…" part of the screen </li>
+ </ol>
+ </li>
+ <li>
+ Global chat
+ <ol>
+ <li>Send/receive message where at least 3 users in the system </li>
+ <li>Adding a contact to the contact list </li>
+ <li>Private message </li>
+ <li>Showing user profile </li>
+ <li>Inviting user to the conference room </li>
+ <li>Copy chat log </li>
+ <li>Delete chat log </li>
+ <li>Changing font style in the massage </li>
+ <li>Adding emotions to the message </li>
+ </ol>
+ Attention! Correct RTL support does not work in the current implementation
+ </li>
+ <li>
+ Calendar view
+ <ol>
+ <li>Change view (weekly/daily/monthly) and moving between the dates </li>
+ <li>Adding/removing/moving by mouse an event </li>
+ </ol>
+ </li>
+ <li>
+ Calendar invitation window
+ <ol>
+ <li>Creating/updating/deleting an event </li>
+ <li>Inviting 3 internal and 3 external guests </li>
+ <li>Different reminder types: receiving e-mail invitation for internal and external guests </li>
+ <li>Password protected invitation </li>
+ <li>Inviting to the rooms of the different types </li>
+ <li>Choosing time zone for external guest </li>
+ <li>Correct user data in the invitations </li>
+ <li>SMS reminder for internal and external guests </li>
+ <li>E-mail reminder for internal and external guests </li>
+ <li>It should be possible to enter to the event via invitation link room at the particular time slot only </li>
+ <li>Enter the room via invitation window </li>
+ </ol>
+ </li>
+ <li>
+ My Profile: User profile should contain correct user info and allow to edit this
+ </li>
+ <li>
+ Contacts and Messages
+ <ol>
+ <li>Add/remove a message </li>
+ <li>Creating a new folder </li>
+ <li>Moving between the folders </li>
+ <li>Marking messages as read/unread </li>
+ <li>Message filters </li>
+ <li>Contact list </li>
+ </ol>
+ </li>
+ <li>
+ User settings
+ <ol>
+ <li>Possibility to change the user info </li>
+ <li>Changing time zone and language (should start to work after user re-login </li>
+ <li>Community settings or different users </li>
+ <li>Display settings</li>
+ </ol>
+ </li>
+ <li>
+ Search users
+ <ol>
+ <li>Send a private message </li>
+ <li>Adding a contact </li>
+ <li>View contact details via user list </li>
+ </ol>
+ </li>
+ <li>
+ Room lists
+ <ol>
+ <li>Public rooms, private rooms and my rooms should contain correct room lists </li>
+ <li>User list for the selected room </li>
+ <li>Room details for the selected room </li>
+ </ol>
+ </li>
+ <li>
+ Recordings
+ <ol>
+ <li>The list should contain available recordings in public and private folders </li>
+ <li>Info panel should contain actual info about the recording </li>
+ <li>Downloading a recording is different formats (AVI/FLV) </li>
+ <li>Play the recording in OpenMeetings </li>
+ <li>Play downloaded recording by Windows player </li>
+ <li>Remove a recording from the folder </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – general issues (should be tested with at least 3 attendees)
+ <ol>
+ <li>Enter the room: different cases for the cam/micro, choosing of the cam resolution, test recording, allow/deny of video </li>
+ <li>User list should be shown correctly </li>
+ <li>Correct user credentials after the room entering </li>
+ <li>Add moderator permissions to the user </li>
+ <li>Turn micro on/off in the user list </li>
+ <li>Increasing/decreasing sound level and turning micro on/off in the video window </li>
+ <li>Turn micro on/off in the user list to another user – possible by the moderator only </li>
+ <li>Increasing/decreasing sound level and turning micro on/off in the video window - possible by the moderator only </li>
+ <li>Allow/deny drawing on whiteboard – possible by the moderator only </li>
+ <li>Allow/deny screen sharing – possible by the moderator only </li>
+ <li>Allow/deny remote screen control – possible by the moderator only </li>
+ <li>Allow/deny exclusive audio – possible by the moderator only </li>
+ <li>Re-start devise settings via user list </li>
+ <li>Re-start devise settings via video window </li>
+ <li>Kick the user off by the moderator </li>
+ <li>Click F8 key to arrange videos </li>
+ <li>Activity and actions panel should contain correct info </li>
+ <li>Exit the room </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing: file uploading + documents
+ <ol>
+ <li>Upload a document with "Load directly to whiteboard" switch turned on </li>
+ <li>Upload a with "Load directly to whiteboard" switch turned on off </li>
+ <li>Upload a document with the localized file name and spaces in the name </li>
+ <li>Uploading a document into different folders: private files should be visible only their owner only </li>
+ <li>Removing a file from the room </li>
+ <li>Home and public drive size should change correctly </li>
+ <li>Adding a new folder </li>
+ <li>Removing a folder </li>
+ <li>Load a document of each supported type and check that it’s shown correctly </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – whiteboard and properties panels (should be tested with at least 3 attendees)
+ <ol>
+ <li>Adding a removing a whiteboard </li>
+ <li>Full-fit switch </li>
+ <li>Clear whiteboard </li>
+ <li>Clear objects of current slide only </li>
+ <li>Save and export </li>
+ <li>Undo </li>
+ <li>Select an object </li>
+ <li>Pointer </li>
+ <li>Text </li>
+ <li>Paint </li>
+ <li>Draw line </li>
+ <li>Draw underline </li>
+ <li>Rectangle </li>
+ <li>Ellipse </li>
+ <li>Arrow </li>
+ <li>Cliparts</li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – chat (should be tested with at least 3 attendees)
+ <ol>
+ <li>Send a message </li>
+ <li>Start a private chat </li>
+ <li>Chat moderation </li>
+ <li>Font style </li>
+ <li>Emotions </li>
+ <li>Show/copy chat log </li>
+ <li>Delete server chat log </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – screen sharing and recordings (should be tested with at least 3 attendees)
+ <ol>
+ <li>"Share record/screen" button in the room </li>
+ <li>Desktop sharer: start/stop sharing </li>
+ <li>Change the shared screen area (X-offset, Y-offset, width, height) </li>
+ <li>Change the screen sharing quality </li>
+ <li>Start/stop recordings – need to check that it works as expected </li>
+ </ol>
+ </li>
+ <li>
+ Restricted room testing – Actions menu
+ <ol>
+ <li>Send invitation: send English and localized message </li>
+ <li>Send invitation with password </li>
+ <li>Send invitations with 3 different time periods </li>
+ <li>Change time zone of the invitation </li>
+ <li>Change language of the invitation </li>
+ <li>Send invitation screen: "Generate URL" button – check the same things as for the invitations sent by email </li>
+ <li>Apply to be moderator </li>
+ <li>Apply to whiteboard access </li>
+ <li>Apply to audio/video access </li>
+ <li>Create a poll </li>
+ <li>Poll results </li>
+ <li>Vote </li>
+ <li>Default whiteboard settings: check all of them </li>
+ </ol>
+ </li>
+ <li>
+ Conference room testing
+ <ol>
+ <li>User list should look in another way in compare with restricted type </li>
+ <li>Generally, all should look OK when enter the room </li>
+ </ol>
+ </li>
+ <li>
+ Interview room testing (should be tested with at least 3 attendees)
+ <ol>
+ <li>User list should look as expected </li>
+ <li>Change a user for video pod </li>
+ <li>Start/stop recordings </li>
+ </ol>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <b>Admin GUI tests</b>
+ <ol>
+ <li>
+ Users
+ <ol>
+ <li>Add/edit/remove/search user in the table </li>
+ <li>Move between screens where there are many users in the table </li>
+ <li>Edit text fields </li>
+ <li>Change a time zone, re-login and check the calendar </li>
+ <li>Change a language, re-login and check the GUI language </li>
+ <li>Е-mail: e-mails should pass </li>
+ <li>Phone and SMS switch: if set and turned on, sms messages should pass </li>
+ <li>Change a status – non-active user cannot login </li>
+ <li>Change user role and re-login </li>
+ <li>Change user group - user has an access only to the rooms belong to his organization </li>
+ <li>Change community settings and check </li>
+ </ol>
+ </li>
+ <li>
+ Connections
+ <ol>
+ <li>Should be tested with at least 3 users in the system </li>
+ <li>Sessionvars table should be shown correctly </li>
+ <li>Kick the user from the system </li>
+ </ol>
+ </li>
+ <li>
+ Organizations
+ <ol>
+ <li>Add/remove/edit/search an organization </li>
+ <li>Add/remove a user from the user list of selected organization </li>
+ </ol>
+ </li>
+ <li>
+ Conference rooms
+ <ol>
+ <li>Add/remove/edit/search a room </li>
+ <li>User list for the given room should contain actual list </li>
+ <li>Turn the Moderation switch on/off and enter the room </li>
+ <li>Add/remove a user to the default moderator list </li>
+ <li>Check max participants number in the room </li>
+ <li>Change room type and enter the room </li>
+ <li>Turn public switch on/off </li>
+ <li>Turn "Demo switch" on/off, change the demonstration time </li>
+ <li>Turn "Allow user questions" on/off and enter the room </li>
+ <li>Turn "Audio only" switch on/off and enter the room </li>
+ <li>Set "Close URL" to some URL, enter the room and then exit – you should be re-directed correspondingly </li>
+ <li>Check that SIP settings work as expected </li>
+ <li>Check that "Allow recordings" switch works as expected </li>
+ <li>Check that "Layout options" switch work as expected </li>
+ <li>Check that "Allow font styles" switch works as expected </li>
+ </ol>
+ </li>
+ <li>
+ Configuration
+ <ol>
+ <li>Allow_frontend_register </li>
+ <li>Mail server settings </li>
+ <li>SMS provider settings </li>
+ <li>Application.name </li>
+ <li>Default_lang_id </li>
+ <li>default time zone </li>
+ <li>SIP settings </li>
+ <li>Reminder minutes </li>
+ </ol>
+ </li>
+ <li>
+ Language editor
+ <ol>
+ <li>Add/remove/edit/search a key </li>
+ <li>Import/export of localization files </li>
+ </ol>
+ </li>
+ <li>
+ LDAP: Add/remove/edit/search a record
+ </li>
+ <li>
+ Backup
+ <ol>
+ <li>System import </li>
+ <li>System backup </li>
+ <li>TBD – need to add tests for command line admin here </li>
+ </ol>
+ </li>
+ <li>
+ Servers: Add/remove/edit/search a server
+ </li>
+ </ol>
+ </li>
+ <li>
+ <b>SIP integration tests</b> (should be tested with at least 3 attendees in the room; for restricted and interview rooms)
+ <ol>
+ <li>Call from the room to the external phone number </li>
+ <li>Call from external phone number to the room </li>
+ <li>Call from the software phone to the room </li>
+ <li>Call from the software phone with video to the room </li>
+ </ol>
+ </li>
+ <li>
+ <b>Network testing script</b>
+ </li>
+ <li>
+ <b>Site integration tests</b>
+ <ol>
+ <li>Enter OpenMeetings room from Mooddle site </li>
+ <li>Check that recordings link are shown on the Moodle site </li>
+ <li>Enter OpenMeetings room from Joomla site </li>
+ <li>Check that recordings link are shown on the Joomla site </li>
+ <li>Enter OpenMeetings room from Drupal site </li>
+ <li>Check that recordings link are shown on the Drupal site </li>
+ </ol>
+ </li>
+ </ol>
+ </blockquote>
+ </td></tr>
+ <tr><td><br/></td></tr>
+ </table>
+ </td>
+ </tr>
+
+ <!-- FOOTER -->
+ <tr><td colspan="2">
+ <hr noshade="noshade" size="1"/>
+ </td></tr>
+ <tr><td colspan="2">
+ <div align="center"><font color="#123465" size="-1"><em>
+ Copyright &#169; 2003-2013, The Apache Software Foundation
+ </em></font></div>
+ </td></tr>
+ </table>
+ </div>
+ </div>
+ </body>
+ </html>
+<!-- end the processing -->
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Index: docs/RTMPSAndHTTPS.html
===================================================================
--- docs/RTMPSAndHTTPS.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/RTMPSAndHTTPS.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/Clustering.html
===================================================================
--- docs/Clustering.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/Clustering.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/ErrorsTable.html
===================================================================
--- docs/ErrorsTable.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/ErrorsTable.html (.../branches/2.1) (revision 1490221)
@@ -184,6 +184,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -514,6 +520,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/dependencies.html
===================================================================
--- docs/dependencies.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/dependencies.html (.../branches/2.1) (revision 1490221)
@@ -185,6 +185,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -515,6 +521,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/SoapRestAPI.html
===================================================================
--- docs/SoapRestAPI.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/SoapRestAPI.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/OracleConfig.html
===================================================================
--- docs/OracleConfig.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/OracleConfig.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/ReleaseGuide.html
===================================================================
--- docs/ReleaseGuide.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/ReleaseGuide.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
@@ -865,31 +873,11 @@
<blockquote>
<p>If VOTEs positive: Upload the release </p>
<div class="xmlcode">
- The distribution upload location
- (www.apache.org/dist)
- for all Apache projects is the
- /www/www.apache.org/dist directory on
- people.apache.org. Each
- project owns a directory within dist.
+ svn mv https://dist.apache.org/repos/dist/dev/openmeetings/2.1/rc3 \<br />
+ https://dist.apache.org/repos/dist/release/openmeetings/2.1 \<br />
+ -m "RC3 is released as 2.1"
</div>
<p>
- Our distribution directory is:
- <br />
- /www/www.apache.org/dist/incubator/openmeetings
- <br />
- each version should have a subfolder within this directory matching
- the name of the release:
- <br />
- for example 2.0
- <br />
- Make sure the the files/folders in the section
- /www/www.apache.org/dist/incubator/openmeetings have the proper
- rights,
- see:
- <a href="http://incubator.apache.org/guides/releasemanagement.html#distribution-permissions" target="_BLANK">http://incubator.apache.org/guides/releasemanagement.html#distribution-permissions
- </a>
- </p>
- <p>
Wait 24 hours (until all Apache mirrors have synced the packages)
and send an announcement to the mailing list + blog and any other
channel.
@@ -897,21 +885,14 @@
<p>
Email announcements should have the subject line:
<br />
- [ANNOUNCE] Apache OpenMeetings x.xx [Incubating] released
+ [ANNOUNCE] Apache OpenMeetings x.xx released
</p>
<p>
- Add a section to
- <a href="downloads.html">downloads</a>
- website.
- <br />
- Make sure that the binary packages are linked using the mirror URL
- as base path (
- <b>not</b>
- www.apache.org/dist):
- <br />
+ Add a section to <a href="downloads.html">downloads</a> website.<br />
+ Make sure that the binary packages are linked using the mirror URL as base path (
+ <b>not</b>http://www.apache.org/dist):<br />
Mirror URL:
- <a href="http://www.apache.org/dyn/closer.cgi/incubator/openmeetings/">http://www.apache.org/dyn/closer.cgi/incubator/openmeetings/
- </a>
+ <a href="http://www.apache.org/dyn/closer.cgi/openmeetings/">http://www.apache.org/dyn/closer.cgi/openmeetings/</a>
</p>
</blockquote>
</td></tr>
Index: docs/TimeZoneHandling.html
===================================================================
--- docs/TimeZoneHandling.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/TimeZoneHandling.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/CommandLineAdmin.html
===================================================================
--- docs/CommandLineAdmin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/CommandLineAdmin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/team-list.html
===================================================================
--- docs/team-list.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/team-list.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/SugarCRMPlugin.html
===================================================================
--- docs/SugarCRMPlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/SugarCRMPlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/get-involved.html
===================================================================
--- docs/get-involved.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/get-involved.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/DrupalPlugin.html
===================================================================
--- docs/DrupalPlugin.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/DrupalPlugin.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
Index: docs/index.html
===================================================================
--- docs/index.html (.../tags/2.1RC3) (revision 1490221)
+++ docs/index.html (.../branches/2.1) (revision 1490221)
@@ -186,6 +186,12 @@
}
+ else if (document.location.href.indexOf("/ManualTesting.html") > 0) {
+ currentLocation = "Development";
+ currentLink = "/ManualTesting.html".substr(1, "/ManualTesting.html".length);
+ }
+
+
else if (document.location.href.indexOf("/ReleaseGuide.html") > 0) {
currentLocation = "Development";
currentLink = "/ReleaseGuide.html".substr(1, "/ReleaseGuide.html".length);
@@ -516,6 +522,8 @@
<br/>
<a href="./JUnitTesting.html">JUnit Testing</a>
<br/>
+ <a href="./ManualTesting.html">Manual Testing</a>
+<br/>
<a href="./ReleaseGuide.html">Release Guide</a>
<br/>
<a href="./WebsiteGuide.html">Website Guide</a>
@@ -738,6 +746,11 @@
<blockquote>
<p>
<strong>
+ OpenMeetings 2.1.0 is released! Please check <a href="downloads.html">Downloads page</a>.
+ (2013-04-01)
+ </strong>
+ <br />
+ <strong>
OpenMeetings new URL, update your filters!
<a href="http://openmeetings.apache.org">openmeetings.apache.org</a> is the new home.
(2013-01-28)
Index: build.properties
===================================================================
--- build.properties (.../tags/2.1RC3) (revision 1490221)
+++ build.properties (.../branches/2.1) (revision 1490221)
@@ -9,7 +9,7 @@
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
-project.version=2.1.0
+project.version=2.1.1
project.status=SNAPSHOT
ivy.install.version=2.3.0
red5.server.revision=4393
Index: build.xml
===================================================================
--- build.xml (.../tags/2.1RC3) (revision 1490221)
+++ build.xml (.../branches/2.1) (revision 1490221)
@@ -428,7 +428,7 @@
<target name="signWebStartJars">
<delete file="${keystore.file}" />
<genkey alias="filetest" storepass="secret" keystore="${keystore.file}" verbose="true"
- ><!-- sigalg="MD5withRSA" keyalg="RSA" -->
+ sigalg="MD5withRSA" keyalg="RSA">
<dname>
<param name="CN" value="Sebastian Wagner" />
<param name="OU" value="technology" />
@@ -457,7 +457,7 @@
<fileset dir="${red5.client.lib}" includes="red5-client*.jar" />
</copy>
<signjar alias="filetest" keystore="${keystore.file}" storepass="secret" lazy="false"
- ><!-- sigalg="MD5withRSA" digestalg="SHA1" -->
+ sigalg="MD5withRSA" digestalg="SHA1">
<path>
<fileset dir="${screenshare.out.dir}">
<include name="**/*.jar" />
Index: .classpath
===================================================================
Index: WebContent/swf10/commonVideoViewContentSWF10.lzx
===================================================================
--- WebContent/swf10/commonVideoViewContentSWF10.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/swf10/commonVideoViewContentSWF10.lzx (.../branches/2.1) (revision 1490221)
@@ -107,9 +107,11 @@
if ($debug) Debug.write("Is interview ? ",canvas.isInterview);
if (canvas.isInterview) {
if ($debug) Debug.write("Is interview ",interviewPodId,"x",canvas["interviewPod"+interviewPodId+"_x"]);
+ if (interviewPodId != null) {
vidContainer.setAttribute("interviewPodId", interviewPodId);
vidContainer.setAttribute("x",canvas["interviewPod"+interviewPodId+"_x"]);
vidContainer.setAttribute("y",canvas["interviewPod"+interviewPodId+"_y"]);
+ }
vidContainer.setAttribute("width",322);
vidContainer.setAttribute("height",281);
}
@@ -139,7 +141,7 @@
vidContainer.setVideouserProfilePic(object);
if ($debug) Debug.warn("start play");
vidContainer._chatvideoinner._videostream.playStream(broadcastId,-1);
- vidContainer.setAttribute("visibility","visible");
+ vidContainer.setAttribute("visibility","hidden");
} else if (avsettings=="v" || avsettings=="av") {
//this means avsettings is either: "v" or "av"
vidContainer.setDefaultVideoSize(object.VWidth,object.VHeight);
Index: WebContent/swf10/main.as3.lzx
===================================================================
--- WebContent/swf10/main.as3.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/swf10/main.as3.lzx (.../branches/2.1) (revision 1490221)
@@ -25,6 +25,7 @@
<passthrough>
import flash.net.*;
import flash.display.*;
+ import flash.events.*;
</passthrough>
</when>
</switch>
Index: WebContent/swf10/video/editRecordStreamSWF10.lzx
===================================================================
--- WebContent/swf10/video/editRecordStreamSWF10.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/swf10/video/editRecordStreamSWF10.lzx (.../branches/2.1) (revision 1490221)
@@ -262,7 +262,9 @@
_micro.gain = 50;
// this has no effect if enhanced microphone is obtained
//Microphone setUseEchoSupression(bool)
- _micro.setUseEchoSuppression(true);
+ var enableEchoSupression = !(canvas.echoSuppression === "false");
+ if ($debug) Debug.write("canvas.echoSuppression: ",canvas.echoSuppression);
+ _micro.setUseEchoSuppression(enableEchoSupression);
}
}
if ($debug) Debug.write("... getMic DONE", _micro);
Index: WebContent/swf10/networkTesting/networktesting.lzx
===================================================================
--- WebContent/swf10/networkTesting/networktesting.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/swf10/networkTesting/networktesting.lzx (.../branches/2.1) (revision 1490221)
@@ -42,6 +42,7 @@
<include href="testsView.lzx" />
<handler name="oninit"><![CDATA[
+ flash.external.ExternalInterface.call("loadingComplete");
doDebugInit();
]]></handler>
Index: WebContent/swf10/base/mainMethods.lzx
===================================================================
--- WebContent/swf10/base/mainMethods.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/swf10/base/mainMethods.lzx (.../branches/2.1) (revision 1490221)
@@ -32,6 +32,7 @@
//Audio-Video-Settings
this.setAttribute('loudnessAcitviation',canvas.myConfigSet.getPointer().xpathQuery('config/loudnessAcitviation/text()'));
+ this.setAttribute('codecType',canvas.myConfigSet.getPointer().xpathQuery('config/codecType/text()'));
this.setAttribute('framesPerSecond',Number(canvas.myConfigSet.getPointer().xpathQuery('config/framesPerSecond/text()')));
this.setAttribute('bandwidthNeededNormal',Number(canvas.myConfigSet.getPointer().xpathQuery('config/bandwidthNeededNormal/text()')));
this.setAttribute('bandwidthNeededBest',Number(canvas.myConfigSet.getPointer().xpathQuery('config/bandwidthNeededBest/text()')));
@@ -39,6 +40,7 @@
this.setAttribute('camQualityBest',Number(canvas.myConfigSet.getPointer().xpathQuery('config/camQualityBest/text()')));
this.setAttribute('microphoneRateBest',Number(canvas.myConfigSet.getPointer().xpathQuery('config/microphoneRateBest/text()')));
this.setAttribute('echoPath',Number(canvas.myConfigSet.getPointer().xpathQuery('config/echoPath/text()')));
+ this.setAttribute('echoSuppression',canvas.myConfigSet.getPointer().xpathQuery('config/echoSuppression/text()'));
//httphostlocal variable is loaded from the SWF8 application, cause it needs value, SWF10 app
//knows nothing about the rtmphostlocal, and we don't want to parse the URL from the browser
Index: WebContent/swf10/base/mainAttributes.lzx
===================================================================
--- WebContent/swf10/base/mainAttributes.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/swf10/base/mainAttributes.lzx (.../branches/2.1) (revision 1490221)
@@ -27,6 +27,7 @@
Audio-Video Quality Settings
overwritten by values from the config.xml
-->
+ <attribute name="codecType" value="h264" type="string" />
<attribute name="framesPerSecond" value="30" type="number" />
<attribute name="bandwidthNeededNormal" value="16384" type="number" />
<attribute name="bandwidthNeededBest" value="32768" type="number" />
@@ -34,7 +35,7 @@
<attribute name="camQualityBest" value="75" type="number" />
<attribute name="microphoneRateBest" value="22" type="number" />
<attribute name="echoPath" value="128" type="number" />
-
+ <attribute name="echoSuppression" value="true" type="string" />
<!---
Holds a reference to the current VideoCOntainer Object
Index: WebContent/swf10/base/remote/baseVideoStream.lzx
===================================================================
--- WebContent/swf10/base/remote/baseVideoStream.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/swf10/base/remote/baseVideoStream.lzx (.../branches/2.1) (revision 1490221)
@@ -224,12 +224,18 @@
//invokes Method in baseVideoView which shows the cam
this.attachCamera(camReference);
- var h264Settings:H264VideoStreamSettings = new H264VideoStreamSettings();
- h264Settings.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_5_1);
- h264Settings.setQuality(camReference.bandwidth, camReference.quality);
- h264Settings.setKeyFrameInterval(camReference.keyFrameInterval);
- h264Settings.setMode(camReference.width, camReference.height, camReference.fps);
- this._ns.videoStreamSettings = h264Settings;
+ var videoStreamSettings = null;
+ if ($debug) Debug.write("codecType=" + canvas.codecType);
+ if (canvas.codecType === "h264") {
+ videoStreamSettings = new H264VideoStreamSettings();
+ videoStreamSettings.setProfileLevel(H264Profile.BASELINE, H264Level.LEVEL_5_1);
+ } else {
+ videoStreamSettings = new VideoStreamSettings();
+ }
+ videoStreamSettings.setQuality(camReference.bandwidth, camReference.quality);
+ videoStreamSettings.setKeyFrameInterval(camReference.keyFrameInterval);
+ videoStreamSettings.setMode(camReference.width, camReference.height, camReference.fps);
+ this._ns.videoStreamSettings = videoStreamSettings;
}
if (micReference != null) {
this.setAttribute('micro', micReference);
Index: WebContent/languages/ukrainian.xml
===================================================================
--- WebContent/languages/ukrainian.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/ukrainian.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/russian.xml
===================================================================
--- WebContent/languages/russian.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/russian.xml (.../branches/2.1) (revision 1490221)
@@ -4644,6 +4644,9 @@
<value>Вы действительно хотите дать слово этому участнику?</value>
</string>
<string id="1540" name="no_timezone">
- <value>Please specify your timezone</value>
+ <value>Укажите Ваш часовой пояс</value>
+ </string>
+ <string id="1545" name="content_is_saving">
+ <value>Сохранение данных, подождите пожалуйста.</value>
</string>
</language>
Index: WebContent/languages/japanese.xml
===================================================================
--- WebContent/languages/japanese.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/japanese.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/turkish.xml
===================================================================
--- WebContent/languages/turkish.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/turkish.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/czech.xml
===================================================================
--- WebContent/languages/czech.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/czech.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/greek.xml
===================================================================
--- WebContent/languages/greek.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/greek.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/polish.xml
===================================================================
--- WebContent/languages/polish.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/polish.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/finnish.xml
===================================================================
--- WebContent/languages/finnish.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/finnish.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/deutsch.xml
===================================================================
--- WebContent/languages/deutsch.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/deutsch.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/slovak.xml
===================================================================
--- WebContent/languages/slovak.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/slovak.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/portugues brazil.xml
===================================================================
--- WebContent/languages/portugues brazil.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/portugues brazil.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/catalan.xml
===================================================================
--- WebContent/languages/catalan.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/catalan.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/french.xml
===================================================================
--- WebContent/languages/french.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/french.xml (.../branches/2.1) (revision 1490221)
@@ -1527,7 +1527,7 @@
<value>$APP_NAME - Invitation</value>
</string>
<string id="501" name="invitation_text_from">
- <value>Message pour :</value>
+ <value>Message de :</value>
</string>
<string id="502" name="invitation_text_message">
<value>Message :</value>
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/swedish.xml
===================================================================
--- WebContent/languages/swedish.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/swedish.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/deutsch (studIP).xml
===================================================================
--- WebContent/languages/deutsch (studIP).xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/deutsch (studIP).xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/chinese traditional.xml
===================================================================
--- WebContent/languages/chinese traditional.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/chinese traditional.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/korean.xml
===================================================================
--- WebContent/languages/korean.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/korean.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/arabic.xml
===================================================================
--- WebContent/languages/arabic.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/arabic.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/italian.xml
===================================================================
--- WebContent/languages/italian.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/italian.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/chinese simplified.xml
===================================================================
--- WebContent/languages/chinese simplified.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/chinese simplified.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/thai.xml
===================================================================
--- WebContent/languages/thai.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/thai.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/indonesian.xml
===================================================================
--- WebContent/languages/indonesian.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/indonesian.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/english.xml
===================================================================
--- WebContent/languages/english.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/english.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/portugues.xml
===================================================================
--- WebContent/languages/portugues.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/portugues.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/persian.xml
===================================================================
--- WebContent/languages/persian.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/persian.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/bulgarian.xml
===================================================================
--- WebContent/languages/bulgarian.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/bulgarian.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/spanish.xml
===================================================================
--- WebContent/languages/spanish.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/spanish.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/danish.xml
===================================================================
--- WebContent/languages/danish.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/danish.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/galician.xml
===================================================================
--- WebContent/languages/galician.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/galician.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/dutch.xml
===================================================================
--- WebContent/languages/dutch.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/dutch.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/hungarian.xml
===================================================================
--- WebContent/languages/hungarian.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/hungarian.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/languages/hebrew.xml
===================================================================
--- WebContent/languages/hebrew.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/languages/hebrew.xml (.../branches/2.1) (revision 1490221)
@@ -4646,4 +4646,7 @@
<string id="1540" name="no_timezone">
<value>Please specify your timezone</value>
</string>
+ <string id="1545" name="content_is_saving">
+ <value>Content is Saving, Please wait.</value>
+ </string>
</language>
Index: WebContent/src/embed-compressed.js
===================================================================
--- WebContent/src/embed-compressed.js (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/embed-compressed.js (.../branches/2.1) (revision 1490221)
@@ -1,898 +0,0 @@
-/*
- Licensed to the Apache Software Foundation (ASF) under one
- or more contributor license agreements. See the NOTICE file
- distributed with this work for additional information
- regarding copyright ownership. The ASF licenses this file
- to you under the Apache License, Version 2.0 (the
- "License"); you may not use this file except in compliance
- with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing,
- software distributed under the License is distributed on an
- "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- KIND, either express or implied. See the License for the
- specific language governing permissions and limitations
- under the License.
-
-*/
-var $dhtml=true;var $as3=false;var $js1=true;var $swf7=false;var $swf8=false;var $svg=false;var $as2=false;var $swf9=false;var $profile=false;var $runtime="dhtml";var $swf10=false;var $debug=false;var $j2me=false;try{
-if(lz){
-
-}}
-catch(e){
-lz={}};lz.embed={options:{},swf:function($1,$2){
-if($2==null){
-$2=8
-};var $3=$1.url;var $4=this.__getqueryurl($3);if($1.accessible&&$1.accessible!="false"){
-$4.flashvars+="&accessible=true"
-};if($1.history){
-$4.flashvars+="&history=true"
-};if($1.bgcolor!=null){
-$4.flashvars+="&bgcolor="+escape($1.bgcolor)
-};$4.flashvars+="&width="+escape($1.width);$4.flashvars+="&height="+escape($1.height);$4.flashvars+="&__lzurl="+escape($3);$4.flashvars+="&__lzminimumversion="+escape($2);$4.flashvars+="&id="+escape($1.id);var $3=$4.url+"?"+$4.query;var $5={width:$1.width+"",height:$1.height+"",id:$1.id,bgcolor:$1.bgcolor,wmode:$1.wmode,flashvars:$4.flashvars,allowfullscreen:$1.allowfullscreen,flash8:$3,appenddiv:lz.embed._getAppendDiv($1.id,$1.appenddivid)};if(lz.embed[$1.id]){
-alert("Warning: an app with the id: "+$1.id+" already exists.")
-};var app=lz.embed[$1.id]=lz.embed.applications[$1.id]={runtime:"swf",_id:$1.id,setCanvasAttribute:lz.embed._setCanvasAttributeSWF,getCanvasAttribute:lz.embed._getCanvasAttributeSWF,callMethod:lz.embed._callMethodSWF,_ready:lz.embed._ready,_onload:[],_getSWFDiv:lz.embed._getSWFDiv,loaded:false,_sendMouseWheel:lz.embed._sendMouseWheel,_sendAllKeysUp:lz.embed._sendAllKeysUpSWF,_setCanvasAttributeDequeue:lz.embed._setCanvasAttributeDequeue,_sendPercLoad:lz.embed._sendPercLoad};if($1.history==false){
-lz.embed.history.active=false
-};lz.embed.dojo.addLoadedListener(lz.embed._loaded,app);lz.embed.dojo.setSwf($5,$2);if($1.cancelmousewheel!=true&&(lz.embed.browser.OS=="Mac"||($5.wmode=="transparent"||$5.wmode=="opaque")&&lz.embed.browser.OS=="Windows"&&(lz.embed.browser.isOpera||lz.embed.browser.isFirefox))){
-if(lz.embed["mousewheel"]){
-lz.embed.mousewheel.setCallback(app,"_sendMouseWheel")
-}};if(($5.wmode=="transparent"||$5.wmode=="opaque")&&lz.embed.browser.OS=="Windows"&&(lz.embed.browser.isOpera||lz.embed.browser.isFirefox)){
-var div=$5.appenddiv;div.onmouseout=function($1){
-div.mouseisoutside=true
-};div.onmouseover=function($1){
-div.mouseisoutside=false
-};div._gotmouseup=document.onmouseup=function($1){
-if(div.mouseisoutside){
-app.callMethod("LzMouseKernel.__mouseUpOutsideHandler()")
-}}}},lfc:function($1,$2){
-if($2==""){
-$2="."
-}else{
-if(!$2||typeof $2!="string"){
-alert("WARNING: lz.embed.lfc() requires a valid serverroot to be specified.");return
-}};lz.embed.options.serverroot=$2;if(lz.embed.browser.isIE){
-var $3=$2+"lps/includes/excanvas.js";this.__dhtmlLoadScript($3)
-};if(lz.embed.browser.isIE&&lz.embed.browser.version<7||lz.embed.browser.isSafari&&lz.embed.browser.version<=419.3){
-var $4=$1.indexOf("debug.js")||$1.indexOf("backtrace.js");if($4!=-1){
-var $5=$1.substring($4,$1.length-3);$1=$1.substring(0,$4)+$5+"-simple.js"
-}};this.__dhtmlLoadScript($1)
-},dhtml:function($1){
-var $2=this.__getqueryurl($1.url,true);var $3=$2.url+"?lzt=object&"+$2.query;lz.embed.__propcache={bgcolor:$1.bgcolor,width:$1.width.indexOf("%")==-1?$1.width+"px":$1.width,height:$1.height.indexOf("%")==-1?$1.height+"px":$1.height,id:$1.id,appenddiv:lz.embed._getAppendDiv($1.id,$1.appenddivid),url:$3,cancelkeyboardcontrol:$1.cancelkeyboardcontrol,serverroot:$1.serverroot,approot:$1.approot!=null?$1.approot:""};if(lz.embed[$1.id]){
-alert("Warning: an app with the id: "+$1.id+" already exists.")
-};var $4=lz.embed[$1.id]=lz.embed.applications[$1.id]={runtime:"dhtml",_id:$1.id,_ready:lz.embed._ready,_onload:[],loaded:false,setCanvasAttribute:lz.embed._setCanvasAttributeDHTML,getCanvasAttribute:lz.embed._getCanvasAttributeDHTML,_sendAllKeysUp:lz.embed._sendAllKeysUpDHTML};if($1.history==false){
-lz.embed.history.active=false
-};this.__dhtmlLoadScript($3);if(lz.embed.browser.OS=="Windows"&&lz.embed.browser.isFirefox){
-window.focus()
-}},applications:{},__dhtmlLoadScript:function($1){
-var $2='<script type="text/javascript" language="JavaScript1.5" src="'+$1+'"></script>';document.writeln($2);return $2
-},__dhtmlLoadLibrary:function($1){
-var $2=document.createElement("script");this.__setAttr($2,"type","text/javascript");this.__setAttr($2,"src",$1);document.getElementsByTagName("head")[0].appendChild($2);return $2
-},__getqueryurl:function($1,$2){
-var $3=$1.split("?");$1=$3[0];if($3.length==1){
-return {url:$1,flashvars:"",query:""}};var $4=this.__parseQuery($3[1]);var $5="";var $6="";var $7=new RegExp("\\+","g");for(var $8 in $4){
-if($8==""||$8==null){
-continue
-};var $9=$4[$8];if($8=="lzr"||$8=="lzt"||$8=="debug"||$8=="profile"||$8=="lzbacktrace"||$8=="lzconsoledebug"||$8=="lzdebug"||$8=="lzkrank"||$8=="lzprofile"||$8=="lzcopyresources"||$8=="fb"||$8=="sourcelocators"||$8=="_canvas_debug"||$8=="lzsourceannotations"){
-$5+=$8+"="+$9+"&"
-};if($2){
-if(window[$8]==null){
-window[$8]=unescape($9.replace($7," "))
-}};$6+=$8+"="+$9+"&"
-};$5=$5.substr(0,$5.length-1);$6=$6.substr(0,$6.length-1);return {url:$1,flashvars:$6,query:$5}},__parseQuery:function($1){
-if($1.indexOf("=")==-1){
-return
-};var $2=$1.split("&");var $3={};for(var $4=0;$4<$2.length;$4++){
-var $5=$2[$4].split("=");if($5.length==1){
-continue
-};var $6=$5[0];var $7=$5[1];$3[$6]=$7
-};return $3
-},__setAttr:function($1,$2,$3){
-$1.setAttribute($2,$3)
-},_setCanvasAttributeSWF:function($1,$2,$3){
-if(this.loaded&&lz.embed.dojo.comm[this._id]&&lz.embed.dojo.comm[this._id]["callMethod"]){
-if($3){
-lz.embed.history._store($1,$2)
-}else{
-lz.embed.dojo.comm[this._id].setCanvasAttribute($1,$2+"")
-}}else{
-if(this._setCanvasAttributeQ==null){
-this._setCanvasAttributeQ=[[$1,$2,$3]]
-}else{
-this._setCanvasAttributeQ.push([$1,$2,$3])
-}}},_setCanvasAttributeDHTML:function($1,$2,$3){
-if($3){
-lz.embed.history._store($1,$2)
-}else{
-if(canvas){
-if(!canvas.__LZdeleted){
-var $lzsc$102169433="$lzc$set_"+$1;if(Function["$lzsc$isa"]?Function.$lzsc$isa(canvas[$lzsc$102169433]):canvas[$lzsc$102169433] instanceof Function){
-canvas[$lzsc$102169433]($2)
-}else{
-canvas[$1]=$2;var $lzsc$1997357926=canvas["on"+$1];if(LzEvent["$lzsc$isa"]?LzEvent.$lzsc$isa($lzsc$1997357926):$lzsc$1997357926 instanceof LzEvent){
-if($lzsc$1997357926.ready){
-$lzsc$1997357926.sendEvent($2)
-}}}}}}},_loaded:function($1){
-if(lz.embed[$1].loaded){
-return
-};if(lz.embed.dojo.info.commVersion==8){
-setTimeout('lz.embed["'+$1+'"]._ready.call(lz.embed["'+$1+'"])',100)
-}else{
-lz.embed[$1]._ready.call(lz.embed[$1])
-}},_setCanvasAttributeDequeue:function(){
-while(this._setCanvasAttributeQ.length>0){
-var $1=this._setCanvasAttributeQ.pop();this.setCanvasAttribute($1[0],$1[1],$1[2])
-}},_ready:function($1){
-this.loaded=true;if(this._callmethod){
-for(var $2=0;$2<this._callmethod.length;$2++){
-this.callMethod(this._callmethod[$2])
-};this._callmethod=null
-};if(this._setCanvasAttributeQ){
-this._setCanvasAttributeDequeue()
-};if($1){
-this.canvas=$1
-};for(var $2=0;$2<this._onload.length;$2++){
-var $3=this._onload[$2];if(typeof $3=="function"){
-$3(this)
-}};if(this.onload&&typeof this.onload=="function"){
-this.onload(this)
-}},_getCanvasAttributeSWF:function($1){
-if(this.loaded){
-return lz.embed.dojo.comm[this._id].getCanvasAttribute($1)
-}else{
-alert("Flash is not ready: getCanvasAttribute"+$1)
-}},_getCanvasAttributeDHTML:function($1){
-return canvas[$1]
-},browser:{init:function(){
-if(this.initted){
-return
-};this.browser=this.searchString(this.dataBrowser)||"An unknown browser";this.version=this.searchVersion(navigator.userAgent)||this.searchVersion(navigator.appVersion)||"an unknown version";this.osversion=this.searchOSVersion(navigator.userAgent)||"an unknown osversion";this.subversion=this.searchSubVersion(navigator.userAgent);this.OS=this.searchString(this.dataOS)||"an unknown OS";this.initted=true;this.isNetscape=this.isSafari=this.isOpera=this.isFirefox=this.isIE=this.isIphone=false;if(this.browser=="Netscape"){
-this.isNetscape=true
-}else{
-if(this.browser=="Safari"){
-this.isSafari=true
-}else{
-if(this.browser=="Opera"){
-this.isOpera=true
-}else{
-if(this.browser=="Firefox"){
-this.isFirefox=true
-}else{
-if(this.browser=="Explorer"){
-this.isIE=true
-}else{
-if(this.browser=="iPhone"){
-this.isSafari=true;this.isIphone=true
-}}}}}}},searchString:function($1){
-for(var $2=0;$2<$1.length;$2++){
-var $3=$1[$2].string;var $4=$1[$2].prop;this.versionSearchString=$1[$2].versionSearch||$1[$2].identity;this.osversionSearchString=$1[$2].osversionSearch||"";if($3){
-if($3.indexOf($1[$2].subString)!=-1){
-return $1[$2].identity
-}}else{
-if($4){
-return $1[$2].identity
-}}}},searchVersion:function($1){
-var $2=$1.indexOf(this.versionSearchString);if($2==-1){
-return
-};return parseFloat($1.substring($2+this.versionSearchString.length+1))
-},searchSubVersion:function($1){
-var $2=new RegExp(this.versionSearchString+".\\d+\\.\\d+\\.([\\d.]+)");var $3=$2.exec($1);if($3&&$3.length>1){
-return parseFloat($3[1])
-}},searchOSVersion:function($1){
-var $2=$1.indexOf(this.osversionSearchString);if($2==-1){
-return
-};return parseFloat($1.substring($2+this.osversionSearchString.length+1))
-},dataBrowser:[{string:navigator.userAgent,subString:"iPhone",identity:"iPhone",versionSearch:"WebKit"},{string:navigator.userAgent,subString:"Chrome",identity:"Chrome"},{string:navigator.userAgent,subString:"OmniWeb",versionSearch:"OmniWeb/",identity:"OmniWeb"},{string:navigator.vendor,subString:"Apple",identity:"Safari",versionSearch:"WebKit"},{prop:window.opera,identity:"Opera"},{string:navigator.vendor,subString:"iCab",identity:"iCab"},{string:navigator.vendor,subString:"KDE",identity:"Konqueror"},{string:navigator.userAgent,subString:"Firefox",identity:"Firefox"},{string:navigator.userAgent,subString:"Iceweasel",versionSearch:"Iceweasel",identity:"Firefox"},{string:navigator.vendor,subString:"Camino",identity:"Camino"},{string:navigator.userAgent,subString:"Netscape",identity:"Netscape"},{string:navigator.userAgent,subString:"MSIE",identity:"Explorer",versionSearch:"MSIE",osversionSearch:"Windows NT"},{string:navigator.userAgent,subString:"Gecko",identity:"Mozilla",versionSearch:"rv"},{string:navigator.userAgent,subString:"Mozilla",identity:"Netscape",versionSearch:"Mozilla"}],dataOS:[{string:navigator.platform,subString:"Win",identity:"Windows"},{string:navigator.platform,subString:"Mac",identity:"Mac"},{string:navigator.userAgent,subString:"iPhone",identity:"iPhone/iPod"},{string:navigator.platform,subString:"Linux",identity:"Linux"}]},_callMethodSWF:function($1){
-if(this.loaded){
-return lz.embed.dojo.comm[this._id].callMethod($1)
-}else{
-if(!this._callmethod){
-this._callmethod=[]
-};this._callmethod.push($1)
-}},_broadcastMethod:function($1){
-var $2=[].slice.call(arguments,1);for(var $3 in lz.embed.applications){
-var $4=lz.embed.applications[$3];if($4[$1]){
-$4[$1].apply($4,$2)
-}}},setCanvasAttribute:function($1,$2,$3){
-lz.embed._broadcastMethod("setCanvasAttribute",$1,$2,$3)
-},callMethod:function($1){
-lz.embed._broadcastMethod("callMethod",$1)
-},_getAppendDiv:function($1,$2){
-var $3=$2?$2:$1+"Container";var $4=document.getElementById($3);if(!$4){
-document.writeln('<div id="'+$3+'"></div>');$4=document.getElementById($3)
-};return $4
-},_getSWFDiv:function(){
-return lz.embed.dojo.obj[this._id].get()
-},_sendMouseWheel:function($1){
-if($1!=null){
-this.callMethod("lz.Keys.__mousewheelEvent("+$1+")")
-}},_gotFocus:function(){
-lz.embed._broadcastMethod("_sendAllKeysUp")
-},_sendAllKeysUpSWF:function(){
-this.callMethod("lz.Keys.__allKeysUp()")
-},_sendAllKeysUpDHTML:function(){
-if(lz["Keys"]&&lz.Keys["__allKeysUp"]){
-lz.Keys.__allKeysUp()
-}},_sendPercLoad:function($1){
-if(this.onloadstatus&&typeof this.onloadstatus=="function"){
-this.onloadstatus($1)
-}},attachEventHandler:function($1,$2,callbackscope,callbackname,closure){
-if(!(callbackscope&&callbackname&&typeof callbackscope[callbackname]=="function")){
-return
-};var $3=$1+$2+callbackscope+callbackname;var $4=this._handlers[$3];if($4!=null){
-if($4 instanceof Array){
-for(var $5=$4.length-1;$5>=0;--$5){
-if($4[$5].$e===$1&&$4[$5].$c===callbackscope){
-return
-}}}else{
-if($4.$e===$1&&$4.$c===callbackscope){
-return
-}}};var $6=function(){
-var $1=window.event?[window.event]:[].slice.call(arguments,0);if(closure){
-$1.push(closure)
-};callbackscope[callbackname].apply(callbackscope,$1)
-};$6.$e=$1;$6.$c=callbackscope;if($4!=null){
-if($4 instanceof Array){
-$4.push($6)
-}else{
-$4=[$4,$6]
-}}else{
-$4=$6
-};this._handlers[$3]=$4;if($1["addEventListener"]){
-$1.addEventListener($2,$6,false);return true
-}else{
-if($1["attachEvent"]){
-return $1.attachEvent("on"+$2,$6)
-}}},removeEventHandler:function($1,$2,$3,$4){
-var $5=$1+$2+$3+$4;var $6,$7=this._handlers[$5];if($7!=null){
-if($7 instanceof Array){
-for(var $8=$7.length-1;$8>=0;--$8){
-if($7[$8].$e===$1&&$7[$8].$c===$3){
-$6=$7[$8];$7.splice($8,1);if($7.length==0){
-delete this._handlers[$5]
-}}}}else{
-if($7.$e===$1&&$7.$c===$3){
-$6=$7;delete this._handlers[$5]
-}}};if(!$6){
-return
-};if($1["removeEventListener"]){
-$1.removeEventListener($2,$6,false);return true
-}else{
-if($1["detachEvent"]){
-return $1.detachEvent("on"+$2,$6)
-}}},_handlers:{},_cleanupHandlers:function(){
-lz.embed._handlers={}},getAbsolutePosition:function($1){
-var $2=null;var $3={};var $4;if(!(lz.embed.browser.isFirefox&&$1==document.body)&&$1.getBoundingClientRect){
-$4=$1.getBoundingClientRect();var $5=document.documentElement.scrollTop||document.body.scrollTop;var $6=document.documentElement.scrollLeft||document.body.scrollLeft;return {x:Math.floor($4.left+$6),y:Math.floor($4.top+$5)}}else{
-if(document.getBoxObjectFor){
-$4=document.getBoxObjectFor($1);$3={x:$4.x,y:$4.y}}else{
-$3={x:$1.offsetLeft,y:$1.offsetTop};$2=$1.offsetParent;if($2!=$1){
-while($2){
-$3.x+=$2.offsetLeft;$3.y+=$2.offsetTop;$2=$2.offsetParent
-}};if(lz.embed.browser.isSafari&&document.defaultView&&document.defaultView.getComputedStyle){
-var $7=document.defaultView.getComputedStyle($1,"")
-};if(lz.embed.browser.isOpera||lz.embed.browser.isSafari&&$7&&$7["position"]=="absolute"){
-$3.y-=document.body.offsetTop
-}}};if($1.parentNode){
-$2=$1.parentNode
-}else{
-return $3
-};while($2&&$2.tagName!="BODY"&&$2.tagName!="HTML"){
-$3.x-=$2.scrollLeft;$3.y-=$2.scrollTop;if($2.parentNode){
-$2=$2.parentNode
-}else{
-return $3
-}};return $3
-}};lz.embed.browser.init();lz.embed.attachEventHandler(window,"beforeunload",lz.embed,"_cleanupHandlers");lz.embed.attachEventHandler(window,"focus",lz.embed,"_gotFocus");if(lz.embed.browser.isIE){
-lz.embed.attachEventHandler(window,"activate",lz.embed,"_gotFocus")
-};try{
-if(lzOptions){
-if(lzOptions.dhtmlKeyboardControl){
-alert("WARNING: this page uses lzOptions.dhtmlKeyboardControl. Please use the cancelkeyboardcontrol embed argument for lz.embed.dhtml() instead.")
-};if(lzOptions.ServerRoot){
-alert("WARNING: this page uses lzOptions.ServerRoot. Please use the second argument of lz.embed.lfc() instead.")
-}}}
-catch(e){
-
-};lz.embed.dojo=function(){
-
-};lz.embed.dojo={defaults:{flash8:null,ready:false,visible:true,width:500,height:400,bgcolor:"#ffffff",allowfullscreen:false,wmode:"window",flashvars:"",minimumVersion:8,id:"flashObject",appenddiv:null},obj:{},comm:{},_loadedListeners:[],_loadedListenerScopes:[],_installingListeners:[],_installingListenerScopes:[],setSwf:function($1,$2){
-if($1==null){
-return
-};var $3={};for(var $4 in this.defaults){
-var $5=$1[$4];if($5!=null){
-$3[$4]=$5
-}else{
-$3[$4]=this.defaults[$4]
-}};if($2!=null){
-this.minimumVersion=$2
-};this._initialize($3)
-},addLoadedListener:function($1,$2){
-this._loadedListeners.push($1);this._loadedListenerScopes.push($2)
-},addInstallingListener:function($1,$2){
-this._installingListeners.push($1);this._installingListenerScopes.push($2)
-},loaded:function($1){
-var $2=lz.embed.dojo;if($2._isinstaller){
-top.location=top.location+""
-};$2.info.installing=false;$2.ready=true;if($2._loadedListeners.length>0){
-for(var $3=0;$3<$2._loadedListeners.length;$3++){
-var $4=$2._loadedListenerScopes[$3];if($1!=$4._id){
-continue
-};lz.embed.dojo._loadedListeners[$3].apply($4,[$4._id])
-}}},installing:function(){
-var $1=lz.embed.dojo;if($1._installingListeners.length>0){
-for(var $2=0;$2<$1._installingListeners.length;$2++){
-var $3=$1._installingListenerScopes[$2];$1._installingListeners[$2].apply($3,[$3._id])
-}}},_initialize:function($1){
-var $2=lz.embed.dojo;var $3=new ($2.Install)($1.id);$2.installer=$3;var $4=new ($2.Embed)($1);$2.obj[$1.id]=$4;if($3.needed()==true){
-$3.install()
-}else{
-$4.write($2.info.commVersion);$2.comm[$1.id]=new ($2.Communicator)($1.id)
-}}};lz.embed.dojo.Info=function(){
-if(lz.embed.browser.isIE){
-document.writeln('<script language="VBScript" type="text/vbscript">');document.writeln("Function VBGetSwfVer(i)");document.writeln(" on error resume next");document.writeln(" Dim swControl, swVersion");document.writeln(" swVersion = 0");document.writeln(' set swControl = CreateObject("ShockwaveFlash.ShockwaveFlash." + CStr(i))');document.writeln(" if (IsObject(swControl)) then");document.writeln(' swVersion = swControl.GetVariable("$version")');document.writeln(" end if");document.writeln(" VBGetSwfVer = swVersion");document.writeln("End Function");document.writeln("</script>")
-};this._detectVersion();this._detectCommunicationVersion()
-};lz.embed.dojo.Info.prototype={version:-1,versionMajor:-1,versionMinor:-1,versionRevision:-1,capable:false,commVersion:8,installing:false,isVersionOrAbove:function($1,$2,$3){
-$3=parseFloat("."+$3);if(this.versionMajor>=$1&&this.versionMinor>=$2&&this.versionRevision>=$3){
-return true
-}else{
-return false
-}},_detectVersion:function(){
-var $1;var $2=lz.embed.browser.isIE;for(var $3=25;$3>0;$3--){
-if($2){
-$1=VBGetSwfVer($3)
-}else{
-$1=this._JSFlashInfo($3)
-};if($1==-1){
-this.capable=false;return
-}else{
-if($1!=0){
-var $4;if($2){
-var $5=$1.split(" ");var $6=$5[1];$4=$6.split(",")
-}else{
-$4=$1.split(".")
-};this.versionMajor=$4[0];this.versionMinor=$4[1];this.versionRevision=$4[2];var $7=this.versionMajor+"."+this.versionRevision;this.version=parseFloat($7);this.capable=true;break
-}}}},_JSFlashInfo:function($1){
-if(navigator.plugins!=null&&navigator.plugins.length>0){
-if(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave Flash"]){
-var $2=navigator.plugins["Shockwave Flash 2.0"]?" 2.0":"";var $3=navigator.plugins["Shockwave Flash"+$2].description;var $4=$3.split(" ");var $5=$4[2].split(".");var $6=$5[0];var $7=$5[1];if($4[3]!=""){
-var $8=$4[3].split("r")
-}else{
-var $8=$4[4].split("r")
-};var $9=$8[1]>0?$8[1]:0;var $10=$6+"."+$7+"."+$9;return $10
-}};return -1
-},_detectCommunicationVersion:function(){
-if(this.capable==false){
-this.commVersion=null;return
-}}};lz.embed.dojo.Embed=function($1){
-this.properties=$1;if(!this.properties.width){
-this.properties.width="100%"
-};if(!this.properties.height){
-this.properties.height="100%"
-};if(!this.properties.bgcolor){
-this.properties.bgcolor="#ffffff"
-};if(!this.properties.visible){
-this.properties.visible=true
-}};lz.embed.dojo.Embed.prototype={protocol:function(){
-switch(window.location.protocol){
-case "https:":
-return "https";break;
-default:
-return "http";break;
-
-}},__getCSSValue:function($1){
-if($1&&$1.length&&$1.indexOf("%")!=-1){
-return "100%"
-}else{
-return $1+"px"
-}},write:function($1,$2){
-var $3="";$3+="width: "+this.__getCSSValue(this.properties.width)+";";$3+="height: "+this.__getCSSValue(this.properties.height)+";";if(this.properties.visible==false){
-$3+="position: absolute; ";$3+="z-index: 10000; ";$3+="top: -1000px; ";$3+="left: -1000px; "
-};var $4;var $5;var $6=lz.embed;if($1>$6.dojo.version){
-$2=true
-};$5=this.properties.flash8;var $7=this.properties.flashvars;var $8=this.properties.flashvars;if($2){
-var $9=escape(window.location);document.title=document.title.slice(0,47)+" - Flash Player Installation";var $10=escape(document.title);$7+="&MMredirectURL="+$9+"&MMplayerType=ActiveX"+"&MMdoctitle="+$10;$8+="&MMredirectURL="+$9+"&MMplayerType=PlugIn"
-};if($6.browser.isIE){
-$4='<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" '+'codebase="'+this.protocol()+"://fpdownload.macromedia.com/pub/shockwave/cabs/flash/"+'swflash.cab#version=8,0,0,0" '+'width="'+this.properties.width+'" '+'height="'+this.properties.height+'" '+'id="'+this.properties.id+'" '+'align="middle"> '+'<param name="allowScriptAccess" value="sameDomain" /> '+'<param name="movie" value="'+$5+'" /> '+'<param name="quality" value="high" /> '+'<param name="FlashVars" value="'+$7+'" /> '+'<param name="bgcolor" value="'+this.properties.bgcolor+'" /> '+'<param name="wmode" value="'+this.properties.wmode+'" /> '+'<param name="allowFullScreen" value="'+this.properties.allowfullscreen+'" /> '+"</object>"
-}else{
-$4='<embed src="'+$5+'" '+'quality="high" '+'bgcolor="'+this.properties.bgcolor+'" '+'wmode="'+this.properties.wmode+'" '+'allowFullScreen="'+this.properties.allowfullscreen+'" '+'width="'+this.properties.width+'" '+'height="'+this.properties.height+'" '+'id="'+this.properties.id+'" '+'name="'+this.properties.id+'" '+'FlashVars="'+$8+'" '+'swLiveConnect="true" '+'align="middle" '+'allowScriptAccess="sameDomain" '+'type="application/x-shockwave-flash" '+'pluginspage="'+this.protocol()+'://www.macromedia.com/go/getflashplayer" />'
-};var $11=this.properties.id+"Container";var $12=this.properties.appenddiv;if($12){
-$12.innerHTML=$4;$12.setAttribute("style",$3)
-}else{
-$4='<div id="'+$11+'" style="'+$3+'"> '+$4+"</div>";document.writeln($4)
-}},get:function(){
-try{
-var $1=document.getElementById(this.properties.id+"")
-}
-catch(e){
-
-};return $1
-},setVisible:function($1){
-var $2=document.getElementById(this.properties.id+"Container");if($1==true){
-$2.style.visibility="visible"
-}else{
-$2.style.position="absolute";$2.style.x="-1000px";$2.style.y="-1000px";$2.style.visibility="hidden"
-}},center:function(){
-var $1=this.properties.width;var $2=this.properties.height;var $3=0;var $4=0;var $5=document.getElementById(this.properties.id+"Container");$5.style.top=$4+"px";$5.style.left=$3+"px"
-}};lz.embed.dojo.Communicator=function($1){
-this._id=$1
-};lz.embed.dojo.Communicator.prototype={_addExternalInterfaceCallback:function(methodName,id){
-var dojo=lz.embed.dojo;var $1=function(){
-var $1=[];for(var $2=0;$2<arguments.length;$2++){
-$1[$2]=arguments[$2]
-};$1.length=arguments.length;return dojo.comm[id]._execFlash(methodName,$1,id)
-};dojo.comm[id][methodName]=$1
-},_encodeData:function($1){
-var $2=RegExp("\\&([^;]*)\\;","g");$1=$1.replace($2,"&amp;$1;");$1=$1.replace(RegExp("<","g"),"&lt;");$1=$1.replace(RegExp(">","g"),"&gt;");$1=$1.replace("\\","&custom_backslash;&custom_backslash;");$1=$1.replace(RegExp("\\n","g"),"\\n");$1=$1.replace(RegExp("\\r","g"),"\\r");$1=$1.replace(RegExp("\\f","g"),"\\f");$1=$1.replace(RegExp("\\0","g"),"\\0");$1=$1.replace(RegExp("\\'","g"),"\\'");$1=$1.replace(RegExp('\\"',"g"),'\\"');return $1
-},_decodeData:function($1){
-if($1==null||typeof $1=="undefined"){
-return $1
-};$1=$1.replace(RegExp("\\&custom_lt\\;","g"),"<");$1=$1.replace(RegExp("\\&custom_gt\\;","g"),">");$1=eval('"'+$1+'"');return $1
-},_chunkArgumentData:function($1,$2,$3){
-var $4=lz.embed.dojo.obj[$3].get();var $5=Math.ceil($1.length/1024);for(var $6=0;$6<$5;$6++){
-var $7=$6*1024;var $8=$6*1024+1024;if($6==$5-1){
-$8=$6*1024+$1.length
-};var $9=$1.substring($7,$8);$9=this._encodeData($9);$4.CallFunction('<invoke name="chunkArgumentData" '+'returntype="javascript">'+"<arguments>"+"<string>"+$9+"</string>"+"<number>"+$2+"</number>"+"</arguments>"+"</invoke>")
-}},_chunkReturnData:function($1){
-var $2=lz.embed.dojo.obj[$1].get();var $3=$2.getReturnLength();var $4=[];for(var $5=0;$5<$3;$5++){
-var $6=$2.CallFunction('<invoke name="chunkReturnData" '+'returntype="javascript">'+"<arguments>"+"<number>"+$5+"</number>"+"</arguments>"+"</invoke>");if($6=='""'||$6=="''"){
-$6=""
-}else{
-$6=$6.substring(1,$6.length-1)
-};$4.push($6)
-};var $7=$4.join("");return $7
-},_execFlash:function($1,$2,$3){
-var $4=lz.embed.dojo.obj[$3].get();$4.startExec();$4.setNumberArguments($2.length);for(var $5=0;$5<$2.length;$5++){
-this._chunkArgumentData($2[$5],$5,$3)
-};$4.exec($1);var $6=this._chunkReturnData($3);$6=this._decodeData($6);$4.endExec();return $6
-}};lz.embed.dojo.Install=function($1){
-this._id=$1
-};lz.embed.dojo.Install.prototype={needed:function(){
-var $1=lz.embed.dojo;if($1.info.capable==false){
-return true
-};if(lz.embed.browser.isSafari==true&&!$1.info.isVersionOrAbove(8,0,0)){
-return true
-};if($1.minimumVersion>$1.info.versionMajor){
-return true
-};if(!$1.info.isVersionOrAbove(8,0,0)){
-return true
-};return false
-},install:function(){
-var $1=lz.embed.dojo;$1.info.installing=true;$1.installing();var $2=$1.obj[this._id].properties;var $3=$2.flash8;var $4=$3.indexOf("swf7");if($4!=-1){
-$1._tempurl=$3;$3=$3.substring(0,$4+3)+"8"+$3.substring($4+4,$3.length);$2.flash8=$3
-};var $4=$3.indexOf("swf9");if($4!=-1){
-$1._tempurl=$3;$3=$3.substring(0,$4+3)+"8"+$3.substring($4+4,$3.length);$2.flash8=$3
-};$1.ready=false;if($1.info.capable==false){
-$1._isinstaller=true;var $5=new ($1.Embed)($2);$5.write($1.minimumVersion)
-}else{
-if($1.info.isVersionOrAbove(6,0,65)){
-var $5=new ($1.Embed)($2);$5.write($1.minimumVersion,true);$5.setVisible(true);$5.center()
-}else{
-alert("This content requires a more recent version of the Macromedia "+" Flash Player.");window.location="http://www.macromedia.com/go/getflashplayer"
-}}},_onInstallStatus:function($1){
-if($1=="Download.Complete"){
-if(lz.embed.browser.isIE){
-top.location=top.location+""
-}}else{
-if($1=="Download.Cancelled"){
-alert("This content requires a more recent version of the Macromedia "+" Flash Player.");window.location="http://www.macromedia.com/go/getflashplayer"
-}else{
-if($1=="Download.Failed"){
-alert("There was an error downloading the Flash Player update. "+"Please try again later, or visit macromedia.com to download "+"the latest version of the Flash plugin.");window.location="http://www.macromedia.com/go/getflashplayer"
-}}}}};lz.embed.dojo.info=new (lz.embed.dojo.Info)();lz.embed.iframemanager={__counter:0,__frames:{},__namebyid:{},__loading:{},__callqueue:{},__calljsqueue:{},__sendmouseevents:{},__hidenativecontextmenu:{},__selectionbookmarks:{},create:function($1,$2,$3,$4,$5,$6){
-var $7="__lz"+lz.embed.iframemanager.__counter++;var $8='javascript:""';var $9='lz.embed.iframemanager.__gotload("'+$7+'")';if($2==null||$2=="null"||$2==""){
-$2=$7
-};lz.embed.iframemanager.__namebyid[$7]=$2;if($4==null||$4=="undefined"){
-$4=document.body
-};if(document.all){
-var $10="<iframe name='"+$2+"' id='"+$7+"' src='"+$8+"' onload='"+$9+"' frameBorder='0'";if($3!=true){
-$10+=" scrolling='no'"
-};$10+="></iframe>";var $11=document.createElement("div");lz.embed.__setAttr($11,"id",$7+"Container");$4.appendChild($11);$11.innerHTML=$10;var $12=document.getElementById($7)
-}else{
-var $12=document.createElement("iframe");lz.embed.__setAttr($12,"name",$2);lz.embed.__setAttr($12,"src",$8);lz.embed.__setAttr($12,"id",$7);lz.embed.__setAttr($12,"onload",$9);if($3!=true){
-lz.embed.__setAttr($12,"scrolling","no")
-};this.appendTo($12,$4)
-};if($12){
-this.__finishCreate($7,$1,$2,$3,$4,$5,$6)
-}else{
-this.__callqueue[$7]=[["__finishCreate",$7,$1,$2,$3,$4,$5,$6]];setTimeout('lz.embed.iframemanager.__checkiframe("'+$7+'")',10)
-};return $7+""
-},__checkiframe:function($1){
-var $2=document.getElementById($1);if($2){
-var $3=lz.embed.iframemanager.__callqueue[$1];delete lz.embed.iframemanager.__callqueue[$1];lz.embed.iframemanager.__playQueue($3)
-}else{
-setTimeout('lz.embed.iframemanager.__checkiframe("'+$1+'")',10)
-}},__playQueue:function($1){
-var $2=lz.embed.iframemanager;for(var $3=0;$3<$1.length;$3++){
-var $4=$1[$3];var $5=$4.splice(0,1);$2[$5].apply($2,$4)
-}},__finishCreate:function($1,$2,$3,$4,$5,$6,$7){
-var $8=document.getElementById($1);if(typeof $2=="string"){
-$8.appcontainer=lz.embed.applications[$2]._getSWFDiv()
-};$8.owner=$2;lz.embed.iframemanager.__frames[$1]=$8;this.__namebyid[$1]=$3;var $9=lz.embed.iframemanager.getFrame($1);$9.__gotload=lz.embed.iframemanager.__gotload;$9._defaultz=$6?$6:99900;this.setZ($1,$9._defaultz);lz.embed.iframemanager.__topiframe=$1;if(document.getElementById&&!document.all){
-$9.style.border="0"
-}else{
-if(document.all){
-lz.embed.__setAttr($9,"allowtransparency","true");var $10=lz.embed[$9.owner];if($10&&$10.runtime=="swf"){
-var $11=$10._getSWFDiv();$11.onfocus=lz.embed.iframemanager.__refresh
-}}};$9.style.position="absolute"
-},appendTo:function($1,$2){
-if($2.__appended==$2){
-return
-};if($1.__appended){
-old=$1.__appended.removeChild($1);$2.appendChild(old)
-}else{
-$2.appendChild($1)
-};$1.__appended=$2
-},getFrame:function($1){
-return lz.embed.iframemanager.__frames[$1]
-},getFrameWindow:function($1){
-if(!this["framesColl"]){
-if(document.frames){
-this.framesColl=document.frames
-}else{
-this.framesColl=window.frames
-}};return this.framesColl[$1]
-},setSrc:function($1,$2,$3){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["setSrc",$1,$2,$3]);return
-};this.__setSendMouseEvents($1,false);if($3){
-var $4=lz.embed.iframemanager.getFrame($1);if(!$4){
-return
-};lz.embed.__setAttr($4,"src",$2)
-}else{
-var $1=lz.embed.iframemanager.__namebyid[$1];var $4=window[$1];if(!$4){
-return
-};$4.location.replace($2)
-};this.__loading[$1]=true
-},setPosition:function($1,$2,$3,$4,$5,$6,$7){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["setPosition",$1,$2,$3,$4,$5,$6,$7]);return
-};var $8=lz.embed.iframemanager.getFrame($1);if(!$8){
-return
-};if($8.appcontainer){
-var $9=lz.embed.getAbsolutePosition($8.appcontainer)
-}else{
-var $9={x:0,y:0}};if($2!=null&&!isNaN($2)){
-$8.style.left=$2+$9.x+"px"
-};if($3!=null&&!isNaN($3)){
-$8.style.top=$3+$9.y+"px"
-};if($4!=null&&!isNaN($4)){
-$8.style.width=$4+"px"
-};if($5!=null&&!isNaN($5)){
-$8.style.height=$5+"px"
-};if($6!=null){
-if(typeof $6=="string"){
-$6=$6=="true"
-};$8.style.display=$6?"block":"none"
-};if($7!=null){
-this.setZ($1,$7+$8._defaultz)
-}},setVisible:function($1,$2){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["setVisible",$1,$2]);return
-};if(typeof $2=="string"){
-$2=$2=="true"
-};var $3=lz.embed.iframemanager.getFrame($1);if(!$3){
-return
-};$3.style.display=$2?"block":"none"
-},bringToFront:function($1){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["bringToFront",$1]);return
-};var $2=lz.embed.iframemanager.getFrame($1);if(!$2){
-return
-};$2._defaultz=100000;this.setZ($1,$2._defaultz);lz.embed.iframemanager.__topiframe=$1
-},sendToBack:function($1){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["sendToBack",$1]);return
-};var $2=lz.embed.iframemanager.getFrame($1);if(!$2){
-return
-};$2._defaultz=99900;this.setZ($1,$2._defaultz)
-},__gotload:function($1){
-var $2=lz.embed.iframemanager.getFrame($1);if(!$2){
-return
-};if($2.owner&&$2.owner.__gotload){
-$2.owner.__gotload()
-}else{
-lz.embed[$2.owner].callMethod("lz.embed.iframemanager.__gotload('"+$1+"')")
-};this.__loading[$1]=false;if(this.__sendmouseevents[$1]){
-this.__setSendMouseEvents($1,true)
-};if(this.__calljsqueue[$1]){
-this.__playQueue(this.__calljsqueue[$1]);delete this.__calljsqueue[$1]
-}},__refresh:function(){
-if(lz.embed.iframemanager.__topiframe){
-var $1=lz.embed.iframemanager.getFrame(lz.embed.iframemanager.__topiframe);if($1.style.display=="block"){
-$1.style.display="none";$1.style.display="block"
-}}},setZ:function($1,$2){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["setZ",$1,$2]);return
-};var $3=lz.embed.iframemanager.getFrame($1);if(!$3){
-return
-};$3.style.zIndex=$2
-},scrollBy:function($1,$2,$3){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["scrollBy",$1,$2,$3]);return
-};var $1=lz.embed.iframemanager.__namebyid[$1];var $4=window.frames[$1];if(!$4){
-return
-};$4.scrollBy($2,$3)
-},__destroy:function($1){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["__destroy",$1]);return
-};var $2=lz.embed.iframemanager.__frames[$1];if($2){
-this.__setSendMouseEvents($1,false);$2.owner=null;$2.appcontainer=null;LzSprite.prototype.__discardElement($2);delete lz.embed.iframemanager.__frames[$1];delete lz.embed.iframemanager.__namebyid[$1]
-}},callJavascript:function($1,$2,$3,$4){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["callJavascript",$1,$2,$3,$4]);return
-};if(this.__loading[$1]){
-if(!this.__calljsqueue[$1]){
-this.__calljsqueue[$1]=[]
-};this.__calljsqueue[$1].push(["callJavascript",$1,$2,$3,$4]);return
-};var $5=lz.embed.iframemanager.getFrameWindow($1);if(!$4){
-$4=[]
-};try{
-var $6=$5.eval($2);if($6){
-var $7=$6.apply($5,$4);if($3){
-$3.execute($7)
-};return $7
-}}
-catch(e){
-
-}},__globalMouseover:function($1,$2){
-var $3=lz.embed.iframemanager.getFrame($2);if(!$3){
-return
-};$1=window.event;if($3.owner&&$3.owner.sprite){
-if($1.toElement&&$1.toElement.nodeName!="IFRAME"){
-LzMouseKernel.__resetMouse()
-}}},__mouseEvent:function($1,$2){
-var $3=lz.embed;var $4=$3.iframemanager.getFrame($2);if(!$4){
-return
-};if(!$1){
-$1=window.event
-};var $5="on"+$1.type;if($4.owner&&$4.owner.sprite&&$4.owner.sprite.__mouseEvent){
-if($5=="oncontextmenu"){
-if(!$3.iframemanager.__hidenativecontextmenu[$2]){
-return
-}else{
-var $6=$3.getAbsolutePosition($4);LzMouseKernel.__sendMouseMove($1,$6.x,$6.y);return LzMouseKernel.__showContextMenu($1)
-}};$4.owner.sprite.__mouseEvent($1);if($5=="onmouseup"){
-if(LzMouseKernel.__lastMouseDown==$4.owner.sprite){
-LzMouseKernel.__lastMouseDown=null
-}}}else{
-if($5=="onmouseleave"){
-$5="onmouseout"
-}else{
-if($5=="onmouseenter"){
-$5="onmouseover"
-}else{
-if($5=="oncontextmenu"){
-return
-}}};$3[$4.owner].callMethod("lz.embed.iframemanager.__gotMouseEvent('"+$2+"','"+$5+"')")
-}},setSendMouseEvents:function($1,$2){
-if(this.__callqueue[$1]){
-this.__callqueue[$1].push(["setSendMouseEvents",$1,$2]);return
-};this.__sendmouseevents[$1]=$2
-},__setSendMouseEvents:function(id,$1){
-var iframe=lz.embed.iframemanager.getFrameWindow(id);if(!iframe){
-return
-};if($1){
-if(lz.embed.browser.isIE){
-lz.embed.attachEventHandler(document,"mouseover",lz.embed.iframemanager,"__globalMouseover",id)
-};try{
-lz.embed.attachEventHandler(iframe.document,"mousedown",lz.embed.iframemanager,"__mouseEvent",id);lz.embed.attachEventHandler(iframe.document,"mouseup",lz.embed.iframemanager,"__mouseEvent",id);lz.embed.attachEventHandler(iframe.document,"click",lz.embed.iframemanager,"__mouseEvent",id);iframe.document.oncontextmenu=function($1){
-if(!$1){
-$1=iframe.event
-};return lz.embed.iframemanager.__mouseEvent($1,id)
-};if(lz.embed.browser.isIE){
-lz.embed.attachEventHandler(iframe.document,"mouseenter",lz.embed.iframemanager,"__mouseEvent",id);lz.embed.attachEventHandler(iframe.document,"mouseleave",lz.embed.iframemanager,"__mouseEvent",id)
-}else{
-lz.embed.attachEventHandler(iframe.document,"mouseover",lz.embed.iframemanager,"__mouseEvent",id);lz.embed.attachEventHandler(iframe.document,"mouseout",lz.embed.iframemanager,"__mouseEvent",id)
-}}
-catch(e){
-
-}}else{
-if(lz.embed.browser.isIE){
-lz.embed.removeEventHandler(document,"mouseover",lz.embed.iframemanager,"__globalMouseover")
-};try{
-lz.embed.removeEventHandler(iframe.document,"mousedown",lz.embed.iframemanager,"__mouseEvent");lz.embed.removeEventHandler(iframe.document,"mouseup",lz.embed.iframemanager,"__mouseEvent");lz.embed.removeEventHandler(iframe.document,"click",lz.embed.iframemanager,"__mouseEvent");iframe.document.oncontextmenu=null;if(lz.embed.browser.isIE){
-lz.embed.removeEventHandler(iframe.document,"mouseenter",lz.embed.iframemanager,"__mouseEvent");lz.embed.removeEventHandler(iframe.document,"mouseleave",lz.embed.iframemanager,"__mouseEvent")
-}else{
-lz.embed.removeEventHandler(iframe.document,"mouseover",lz.embed.iframemanager,"__mouseEvent");lz.embed.removeEventHandler(iframe.document,"mouseout",lz.embed.iframemanager,"__mouseEvent")
-}}
-catch(e){
-
-}}},setShowNativeContextMenu:function($1,$2){
-this.__hidenativecontextmenu[$1]=!$2
-},storeSelection:function($1){
-var $2=lz.embed.iframemanager;var $3=$2.getFrameWindow($1);if($3&&$3.document&&$3.document.selection&&$3.document.selection.type=="Text"){
-$2.__selectionbookmarks[$1]=$3.document.selection.createRange().getBookmark()
-}},restoreSelection:function($1){
-var $2=lz.embed.iframemanager;var $3=$2.getFrameWindow($1);if($2.__selectionbookmarks[$1]&&$3){
-var $4=$2.__selectionbookmarks[$1];var $5=$3.document.body.createTextRange();$5.moveToBookmark($4);$5.select()
-}}};lz.embed.mousewheel={__mousewheelEvent:function($1){
-if(!$1){
-$1=window.event
-};var $2=0;if($1.wheelDelta){
-$2=$1.wheelDelta/120;if(lz.embed.browser.isOpera){
-$2=-$2
-}}else{
-if($1.detail){
-$2=-$1.detail/3
-}};if($1.preventDefault){
-$1.preventDefault()
-};$1.returnValue=false;var $3=lz.embed.mousewheel.__callbacks.length;if($2!=null&&$3>0){
-for(var $4=0;$4<$3;$4+=2){
-var $5=lz.embed.mousewheel.__callbacks[$4];var $6=lz.embed.mousewheel.__callbacks[$4+1];if($5&&$5[$6]){
-$5[$6]($2)
-}}}},__callbacks:[],setCallback:function($1,$2){
-var $3=lz&&lz.embed&&lz.embed.options&&lz.embed.options.cancelkeyboardcontrol!=true||true;if(lz.embed.mousewheel.__callbacks.length==0&&$3){
-if(window.addEventListener){
-lz.embed.attachEventHandler(window,"DOMMouseScroll",lz.embed.mousewheel,"__mousewheelEvent")
-};lz.embed.attachEventHandler(document,"mousewheel",lz.embed.mousewheel,"__mousewheelEvent")
-};lz.embed.mousewheel.__callbacks.push($1,$2)
-}};lz.embed.history={active:null,_currentstate:null,_apps:[],_intervalID:null,_registeredapps:{},intervaltime:200,init:function(){
-var $1=lz.embed.history;if($1.active||$1.active==false){
-return
-};$1.active=true;$1._title=top.document.title;var $2=$1.get();if(lz.embed.browser.isSafari){
-$1._historylength=history.length;$1._history=[];for(var $3=1;$3<$1._historylength;$3++){
-$1._history.push("")
-};$1._history.push($2);var $4=document.createElement("form");$4.method="get";document.body.appendChild($4);$1._form=$4;if(!top.document.location.lzaddr){
-top.document.location.lzaddr={}};if(top.document.location.lzaddr.history){
-$1._history=top.document.location.lzaddr.history.split(",")
-};if($2!=""){
-$1.set($2)
-}}else{
-if(lz.embed.browser.isIE){
-var $2=top.location.hash;if($2){
-$2=$2.substring(1)
-};var $3=document.createElement("iframe");lz.embed.__setAttr($3,"id","lzHistory");lz.embed.__setAttr($3,"frameborder","no");lz.embed.__setAttr($3,"scrolling","no");lz.embed.__setAttr($3,"width","0");lz.embed.__setAttr($3,"height","0");lz.embed.__setAttr($3,"src",'javascript:""');document.body.appendChild($3);$3=document.getElementById("lzHistory");$1._iframe=$3;$3.style.display="none";$3.style.position="absolute";$3.style.left="-999px";var $5=$3.contentDocument||$3.contentWindow.document;$5.open();$5.close();if($2!=""){
-$5.location.hash="#"+$2;$1._parse($2)
-}}else{
-if($2!=""){
-$1._parse($2);$1._currentstate=$2
-}}};if($1._intervalID!=null){
-clearInterval($1._intervalID)
-};if($1.intervaltime>0){
-$1._intervalID=setInterval("lz.embed.history._checklocationhash()",$1.intervaltime)
-}},listen:function($1){
-if(typeof $1=="string"){
-$1=lz.embed.applications[$1];if(!$1||!$1.runtime){
-return
-}};if(!$1){
-return
-};var $2=lz.embed.history;if($2._registeredapps[$1._id]){
-return
-};$2._registeredapps[$1.id]=true;$2._apps.push($1);$2.init()
-},_checklocationhash:function(){
-if(lz.embed.dojo&&lz.embed.dojo.info&&lz.embed.dojo.info.installing){
-return
-};if(lz.embed.browser.isSafari){
-var $1=this._history[this._historylength-1];if($1==""||$1=="#"){
-$1="#0"
-};if(!this._skip&&this._historylength!=history.length){
-this._historylength=history.length;if(typeof $1!="undefined"){
-$1=$1.substring(1);this._currentstate=$1;this._parse($1)
-}}else{
-this._parse($1.substring(1))
-}}else{
-var $1=lz.embed.history.get();if($1==""){
-$1="0"
-};if(lz.embed.browser.isIE){
-if($1!=this._currentstate){
-top.location.hash=$1=="0"?"":"#"+$1;this._currentstate=$1;this._parse($1)
-};if(top.document.title!=this._title){
-top.document.title=this._title
-}}else{
-this._currentstate=$1;this._parse($1)
-}}},set:function($1){
-if(lz.embed.history.active==false){
-return
-};if($1==null){
-$1=""
-};if(lz.embed.history._currentstate==$1){
-return
-};lz.embed.history._currentstate=$1;var $2="#"+$1;if(lz.embed.browser.isIE){
-top.location.hash=$2=="#0"?"":$2;var $3=lz.embed.history._iframe.contentDocument||lz.embed.history._iframe.contentWindow.document;$3.open();$3.close();$3.location.hash=$2;lz.embed.history._parse($1+"")
-}else{
-if(lz.embed.browser.isSafari){
-lz.embed.history._history[history.length]=$2;lz.embed.history._historylength=history.length+1;if(lz.embed.browser.version<412){
-if(top.location.search==""){
-lz.embed.history._form.action=$2;top.document.location.lzaddr.history=lz.embed.history._history.toString();lz.embed.history._skip=true;lz.embed.history._form.submit();lz.embed.history._skip=false
-}}else{
-var $4=document.createEvent("MouseEvents");$4.initEvent("click",true,true);var $5=document.createElement("a");$5.href=$2;$5.dispatchEvent($4)
-}}else{
-top.location.hash=$2;lz.embed.history._parse($1+"")
-}};return true
-},get:function(){
-var $1="";if(lz.embed.browser.isIE){
-if(lz.embed.history._iframe){
-var $2=lz.embed.history._iframe.contentDocument||lz.embed.history._iframe.contentWindow.document;$1=$2.location.hash
-}}else{
-$1=top.location.href
-};var $3=$1.indexOf("#");if($3!=-1){
-return $1.substring($3+1)
-};return ""
-},_parse:function($1){
-var $2=lz.embed.history;if($1.length==0){
-return
-};for(var $3=0,$4=lz.embed.history._apps.length;$3<$4;$3++){
-var $5=lz.embed.history._apps[$3];if(!$5.loaded||$5._lasthash==$1){
-continue
-};$5._lasthash=$1;if($1.indexOf("_lz")!=-1){
-$1=$1.substring(3);var $6=$1.split(",");for(var $7=0;$7<$6.length;$7++){
-var $8=$6[$7];var $9=$8.indexOf("=");var $10=unescape($8.substring(0,$9));var $11=unescape($8.substring($9+1));lz.embed.setCanvasAttribute($10,$11);if(window["canvas"]){
-canvas.setAttribute($10,$11)
-}}}else{
-if($5.runtime=="swf"){
-$2.__setFlash($1,$5._id)
-}else{
-if(window["lz"]&&lz["History"]&&lz.History["isReady"]&&lz.History["receiveHistory"]){
-lz.History.receiveHistory($1)
-}}}}},_store:function($1,$2){
-if($1 instanceof Object){
-var $3="";for(var $4 in $1){
-if($3!=""){
-$3+=","
-};$3+=escape($4)+"="+escape($1[$4])
-}}else{
-var $3=escape($1)+"="+escape($2)
-};this.set("_lz"+$3)
-},__setFlash:function($1,$2){
-var $3=lz.embed[$2];if($3&&$3.loaded&&$3.runtime=="swf"){
-var $4=$3._getSWFDiv();if($4){
-var $5=$3.callMethod("lz.History.receiveHistory("+$1+")");$3._lasthash=$1
-}}}};if(lz.embed.browser.isFirefox){
-window.onunload=function(){
-
-}};lz.embed.regex={cache:{},create:function($1,$2,$3){
-try{
-var $4=lz.embed.regex;$4.cache[$1]=new RegExp($4.unmask($2),$4.unmask($3));return true
-}
-catch(e){
-return e.name+": "+e.message
-}},test:function($1,$2,$3){
-var $4=lz.embed.regex;var $5=$4.cache[$1];$5.lastIndex=$3;return [$5.test($4.unmask($2)),$5.lastIndex]
-},exec:function($1,$2,$3){
-var $4=lz.embed.regex;var $5=$4.cache[$1];$5.lastIndex=$3;var $6=$5.exec($4.unmask($2));if($6){
-($6=$4.maskArr($6)).push($6.index,$5.lastIndex);return $6
-}else{
-return null
-}},match:function($1,$2){
-var $3=lz.embed.regex;var $4=$3.unmask($2).match($3.cache[$1]);return $4?$3.maskArr($4):null
-},replace:function($1,$2,$3){
-var $4=lz.embed.regex;return $4.mask($4.unmask($2).replace($4.cache[$1],$4.unmask($3)))
-},search:function($1,$2){
-var $3=lz.embed.regex;return $3.unmask($2).search($3.cache[$1])
-},split:function($1,$2,$3){
-var $4=lz.embed.regex;return $4.maskArr($4.unmask($2).split($4.cache[$1],$3))
-},remove:function($1){
-delete lz.embed.regex.cache[$1]
-},mask:function($1){
-
-var re = /^\s*$/;
-var re2 = /\s/g;
-;return( $1==null||!re.test($1)?$1:"__#lznull"+$1.replace(re2,function($1){
-switch($1){
-case " ":
-return "w";
-case "\f":
-return "f";
-case "\n":
-return "n";
-case "\r":
-return "r";
-case "\t":
-return "t";
-case "\xA0":
-return "s";
-case "\u2028":
-return "l";
-case "\u2029":
-return "p";
-
-}}))
-},unmask:function($1){
-return $1=="__#lznull"?"":$1
-},maskArr:function($1){
-var $2=lz.embed.regex;for(var $3=0;$3<$1.length;++$3){
-$1[$3]=$2.mask($1[$3])
-};return $1
-}};
\ В конце файла нет новой строки
Index: WebContent/src/main.lzx
===================================================================
--- WebContent/src/main.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/main.lzx (.../branches/2.1) (revision 1490221)
@@ -48,9 +48,9 @@
<whitestyle name="menuStyle" textcolor="0x000000" />
-
<!-- main colors: 264269 -->
<handler name="oninit">
+ flash.external.ExternalInterface.call("loadingComplete");
doDebugInit();
var cmenu = new LzContextMenu();
canvas.setDefaultContextMenu(cmenu);
Index: WebContent/src/modules/lzrecordcontent/lzRecordContent.lzx
===================================================================
--- WebContent/src/modules/lzrecordcontent/lzRecordContent.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/lzrecordcontent/lzRecordContent.lzx (.../branches/2.1) (revision 1490221)
@@ -25,7 +25,7 @@
View for recorded contents list.
When you select 'Recordings' on the top menu, this class shows the list.
-->
-<class name="lzRecordContent" extends="baseContentView" destroyByMethod="true">
+<class name="lzRecordContent" extends="baseContentView" destroyByMethod="false">
<handler name="oninit">
_mainScrollBar.setAttribute("visibility","hidden");
Index: WebContent/src/modules/settings/privatemessages/newPrivateMessage.lzx
===================================================================
--- WebContent/src/modules/settings/privatemessages/newPrivateMessage.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/settings/privatemessages/newPrivateMessage.lzx (.../branches/2.1) (revision 1490221)
@@ -411,7 +411,7 @@
var hour2 = tDate.getHours()+1;
if (hour2 < 10) {
- hour2 = "0"+hour;
+ hour2 = "0"+hour2;
} else if (hour2 > 25) {
hour2 = 24;
}
Index: WebContent/src/modules/conference/flexibleConferenceRoom/roomSidebar/interviewRoomSidebar.lzx
===================================================================
--- WebContent/src/modules/conference/flexibleConferenceRoom/roomSidebar/interviewRoomSidebar.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/conference/flexibleConferenceRoom/roomSidebar/interviewRoomSidebar.lzx (.../branches/2.1) (revision 1490221)
@@ -43,20 +43,6 @@
]]>
</method>
- <method name="toggleStatus">
- if (this.isOpen) {
- this._doClose.setAttribute('started', true);
- this.isOpen = false;
- this._minimizeSidebar._icon.setAttribute("frame",2);
- this._minimizeSidebar._icon._labelTooltip.setAttribute("labelid",857);
- } else {
- this._doOpen.setAttribute('started', true);
- this.isOpen = true;
- this._minimizeSidebar._icon.setAttribute("frame",1);
- this._minimizeSidebar._icon._labelTooltip.setAttribute("labelid",856);
- }
- </method>
-
<view name="borderBarTop" y="0"
width="${ parent.width }" bgcolor="$once{ canvas.getThemeColor('mainBorderColor') }" height="1" />
<view name="_tabbarBg" width="${ parent.width }" height="32" y="1" bgcolor="0xFAFAFA" />
@@ -86,29 +72,12 @@
<view name="_minimizeSidebar" x="${ parent.width - 10 }" width="10" y="1"
bgcolor="0xE0E1EB" height="${ parent.height-1 }">
- <handler name="onclick">
- parent.toggleStatus();
- </handler>
<view width="${ parent.width }" height="$once{ parent.height }"
bgcolor="0xE0E1EB" >
</view>
- <view name="_icon" resource="sidebar_tab_btn" y="0">
- <handler name="onclick">
- parent.parent.toggleStatus();
- </handler>
- <labelTooltip name="_labelTooltip" labelid="856" />
- </view>
-
</view>
-
- <animator name="_doOpen" attribute="width" to="$once{ parent.width }"
- duration="750" started="false" />
-
- <animator name="_doClose" attribute="width" to="10"
- duration="750" started="false" />
-
</class>
</library>
Index: WebContent/src/modules/conference/flexibleConferenceRoom/baseConferenceRoom.lzx
===================================================================
--- WebContent/src/modules/conference/flexibleConferenceRoom/baseConferenceRoom.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/conference/flexibleConferenceRoom/baseConferenceRoom.lzx (.../branches/2.1) (revision 1490221)
@@ -105,17 +105,17 @@
canvas.sendViaLocalConnection(canvas.vid_lc_name, "arrangeWindows", null);
return;
}
-
if (canvas.GIVE_EXCLUSIVE_AUDIO_KEY == keyCode) {
if (canvas.ismoderator || canvas.isAllowedToGiveExclusiveAudio) {
- var obj = canvas._videocontainer._participants.getUserListItemByPublicSID(canvas.publicSID);
- if (null != obj) {
- obj._giveExclusiveAudioView._micButton.onclick.sendEvent();
- }
- return;
+ canvas.thishib.giveExclusiveAudio.setExclusiveAudio(canvas.publicSID);
} else {
new lz.rpcErrorDialog(canvas.main_content._content.inner,{errorid:-54});
}
+ return;
+ }
+ if (canvas.MUTE_AUDIO_KEY == keyCode) {
+ canvas._videocontainer._videoviewcontent.muteSound(canvas.publicSID, !canvas.micMuted);
+ return;
}
]]>
</handler>
Index: WebContent/src/modules/conference/popups/rpcerrorDialog.lzx
===================================================================
--- WebContent/src/modules/conference/popups/rpcerrorDialog.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/conference/popups/rpcerrorDialog.lzx (.../branches/2.1) (revision 1490221)
@@ -70,7 +70,7 @@
</class>
-<class name="contentSaveWindow" extends="baseErrorDialog">
+<class name="contentSaveWindow" extends="baseErrorDialog" labelid="936">
<attribute name="saveObj" value="null" />
<attribute name="refObj" value="null" />
@@ -78,8 +78,11 @@
<attribute name="errorid" value="0" type="number" />
<handler name="oninit">
+ this.setAttribute('errorid',1545);
+ this.setAttribute('errortext',canvas.getLabelName(1545));
lz.ModeManager.makeModal(this);
- if ($debug) Debug.write("contentsavewindow: ",errorid);
+ if ($debug) Debug.write("contentsavewindow_errorid: ",errorid);
+ if ($debug) Debug.write("contentsavewindow_errortext: ",errortext);
this.startSave();
</handler>
Index: WebContent/src/modules/conference/whiteboard/fixedFileExplorerWhiteboardPanel.lzx
===================================================================
--- WebContent/src/modules/conference/whiteboard/fixedFileExplorerWhiteboardPanel.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/conference/whiteboard/fixedFileExplorerWhiteboardPanel.lzx (.../branches/2.1) (revision 1490221)
@@ -140,6 +140,7 @@
tWhiteboardBtn.onmouseout.sendEvent(null);
this.addNewItemButton.updatePosition();
+ canvas.whiteboardCount++;
return whiteboard;
</method>
@@ -175,6 +176,7 @@
this.objMessage[0] = "removeWindow";
this.objMessage[1] = whiteboardId;
this.sendMessageToMembers.doCall();
+ canvas.whiteboardCount--;
}
</method>
Index: WebContent/src/modules/conference/whiteboard/base/tools/baseDrawPointer.lzx
===================================================================
--- WebContent/src/modules/conference/whiteboard/base/tools/baseDrawPointer.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/conference/whiteboard/base/tools/baseDrawPointer.lzx (.../branches/2.1) (revision 1490221)
@@ -41,9 +41,21 @@
</method>
<method name="drawPointerWhiteBoardFinal" args="newName,x,y,width,height" >
+ var displayedName = canvas.currentuser;
+ if (canvas.firstName.length() > 0) {
+ displayedName = canvas.firstName;
+ }
+ if (canvas.lastName.length > 0) {
+ if (canvas.firstName.length > 0) {
+ displayedName += " " + canvas.lastName;
+ } else {
+ displayedName = canvas.lastName;
+ }
+ }
+
var actionObject = new Array();
actionObject[0] = 'pointerWhiteBoard';
- actionObject[1] = canvas.currentuser;
+ actionObject[1] = displayedName;
actionObject[2] = this.counter;//-6
actionObject[3] = x;//-5
actionObject[4] = y;//-4
Index: WebContent/src/modules/conference/tabcontent/fileexplorer/treeitems/wmlFileExplorerItem.lzx
===================================================================
--- WebContent/src/modules/conference/tabcontent/fileexplorer/treeitems/wmlFileExplorerItem.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/modules/conference/tabcontent/fileexplorer/treeitems/wmlFileExplorerItem.lzx (.../branches/2.1) (revision 1490221)
@@ -30,16 +30,7 @@
<contextmenuitem caption="$once{ canvas.getLabelName(711) }"
onselect="parent.parent.parent.editFolderName()" />
- <!--
- <contextmenuitem caption="$once{ canvas.getLabelName(708) }"
- separatorbefore="true"
- onselect="parent.parent.parent.addFile()" />
-
- <contextmenuitem caption="$once{ canvas.getLabelName(709) }"
- onselect="parent.parent.parent.addFolder()" />
- -->
-
- <contextmenuitem caption="$once{ canvas.getLabelName(710) }"
+ <contextmenuitem caption="$once{ canvas.getLabelName(719) }"
onselect="parent.parent.parent.deleteFile(719)" />
Index: WebContent/src/base/hibernate/hibRtmpConnection.lzx
===================================================================
--- WebContent/src/base/hibernate/hibRtmpConnection.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/base/hibernate/hibRtmpConnection.lzx (.../branches/2.1) (revision 1490221)
@@ -204,7 +204,7 @@
<handler name="onerror" >
<![CDATA[
- if ($debug) Debug.write("error ",this.status,this.src,this.lastCalled,this.showKickMessage);
+ canvas.remoteLogWrite("error " + this.status + " " + this.src + " " + this.lastCalled + " " + this.showKickMessage);
if (this.showFullMessage) {
new lz.labelerrorPopup(canvas,{errorlabelid:99});
this.showFullMessage = false;
@@ -689,6 +689,10 @@
if ($debug) Debug.write("max_upload_size is: ", value[2].conf_value);
canvas.setAttribute('MAX_UPLOAD_SIZE', value[2].conf_value);
}
+ if (value.length > 3) {
+ if ($debug) Debug.write("Mute/unmute keycode is: ", value[3].conf_value);
+ canvas.setAttribute('MUTE_AUDIO_KEY', value[3].conf_value);
+ }
} else {
if ($debug) Debug.warn("xmlcrm.getGeneralOptions empty!");
}
Index: WebContent/src/base/mainMethods.lzx
===================================================================
--- WebContent/src/base/mainMethods.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/base/mainMethods.lzx (.../branches/2.1) (revision 1490221)
@@ -114,6 +114,15 @@
]]>
</method>
+ <method name="remoteLogWrite" args="message">
+ if ($debug) Debug.write(message);
+ var remoteLog = new lz.dataset();
+ remoteLog.setQueryType("POST");
+ remoteLog.setAttribute("src", canvas.getUrl() + "/remotelog.upload");
+ remoteLog.setQueryParam("message", message);
+ remoteLog.doRequest();
+ </method>
+
<method name="getHttpHost">
<![CDATA[
if (canvas.httphostlocal != null && canvas.httphostlocal.length > 0) {
@@ -215,6 +224,7 @@
//this.setAttribute('showmodernWhiteBoard',canvas.myConfigSet.getPointer().xpathQuery('config/showmodernWhiteBoard/text()'));
//Audio-Video-Settings
+ this.setAttribute('codecType',canvas.myConfigSet.getPointer().xpathQuery('config/codecType/text()'));
this.setAttribute('framesPerSecond',Number(canvas.myConfigSet.getPointer().xpathQuery('config/framesPerSecond/text()')));
this.setAttribute('bandwidthNeededNormal',Number(canvas.myConfigSet.getPointer().xpathQuery('config/bandwidthNeededNormal/text()')));
this.setAttribute('bandwidthNeededBest',Number(canvas.myConfigSet.getPointer().xpathQuery('config/bandwidthNeededBest/text()')));
Index: WebContent/src/base/components/upload/uploadWindowExplorer.lzx
===================================================================
--- WebContent/src/base/components/upload/uploadWindowExplorer.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/base/components/upload/uploadWindowExplorer.lzx (.../branches/2.1) (revision 1490221)
@@ -226,12 +226,6 @@
</handler>
</simpleLabelButton>
- <!--
- <labelText labelid="592" name="progress2" visibility="hidden" x="10" y="140"
- width="250" multiline="true">
-
- </labelText>
- -->
<view name="progress2" x="10" y="158" width="250" visibility="hidden" height="10" bgcolor="#C6CEDF">
<attribute name="isStarted" value="false" type="boolean" />
<method name="startShowing">
@@ -280,7 +274,7 @@
</view>
<labelCheckbox name="_loadToWhiteboard" x="4" y="184" fontsize="11"
- labelid="1312" value="true" />
+ labelid="1312" value="${ canvas.whiteboardCount &gt; 0 }" enabled="${ canvas.whiteboardCount &gt; 0 }" />
<simpleLabelButton name="_close" x="100" y="204" labelid="595" width="160" height="20">
<handler name="onclick">
Index: WebContent/src/base/externalJavaScript.lzx
===================================================================
Index: WebContent/src/base/mainAttributes.lzx
===================================================================
--- WebContent/src/base/mainAttributes.lzx (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/src/base/mainAttributes.lzx (.../branches/2.1) (revision 1490221)
@@ -253,6 +253,7 @@
<attribute name="currentlanguage" value="english" type="string" />
<attribute name="objWhiteboard" value="null" />
+<attribute name="whiteboardCount" value="0" type="number" />
<attribute name="objMessage" value="null" />
<attribute name="VarsModeratorGeneral" value="null" />
@@ -265,6 +266,7 @@
<!--- Audio-Video Quality Settings
overwritten by values from the config.xml
-->
+<attribute name="codecType" value="h264" type="string" />
<attribute name="framesPerSecond" value="30" type="number" />
<attribute name="bandwidthNeededNormal" value="16384" type="number" />
<attribute name="bandwidthNeededBest" value="32768" type="number" />
@@ -470,6 +472,7 @@
<attribute name="GIVE_EXCLUSIVE_AUDIO_KEY" value="123"/> <!-- F12 -->
<attribute name="ARRANGE_WINDOWS_KEY" value="119"/> <!-- F8 -->
+<attribute name="MUTE_AUDIO_KEY" value="118"/> <!-- F7 -->
<!--
Indicates if the Red5 SIP Integration is enabled or not and
Index: WebContent/openmeetings/embed-compressed.js
===================================================================
--- WebContent/openmeetings/embed-compressed.js (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/openmeetings/embed-compressed.js (.../branches/2.1) (revision 1490221)
@@ -383,7 +383,7 @@
}},__getCSSValue:function($1){
if($1&&$1.length&&$1.indexOf("%")!=-1){
-return "100%"
+return "1px"
}else{
return $1+"px"
}},write:function($1,$2){
Index: WebContent/openmeetings/openmeetings_functions.js
===================================================================
--- WebContent/openmeetings/openmeetings_functions.js (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/openmeetings/openmeetings_functions.js (.../branches/2.1) (revision 1490221)
@@ -40,6 +40,13 @@
document.getElementById("lzapp").redirectToUrlCallback("ok");
}
+function loadingComplete() {
+ document.getElementById("loading").style.display = 'none';
+ var lzApp = document.getElementById("lzappContainer");
+ lzApp.style.width = '100%';
+ lzApp.style.height = '100%';
+}
+
function getTimeZoneOffset() {
var rightNow = new Date(), std_time_offset = -rightNow.getTimezoneOffset() / 60;
for (var i = 0; i < 12; ++i) {
Index: WebContent/openmeetings/config.xsd
===================================================================
--- WebContent/openmeetings/config.xsd (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/openmeetings/config.xsd (.../branches/2.1) (revision 1490221)
@@ -41,6 +41,7 @@
<xs:element ref="showWindowEffect"/>
<xs:element ref="showRecording"/>
<xs:element ref="firstdayinweek"/>
+ <xs:element ref="codecType"/>
<xs:element ref="framesPerSecond"/>
<xs:element ref="bandwidthNeededNormal"/>
<xs:element ref="bandwidthNeededBest"/>
@@ -48,6 +49,7 @@
<xs:element ref="camQualityBest"/>
<xs:element ref="microphoneRateBest"/>
<xs:element ref="echoPath" />
+ <xs:element ref="echoSuppression" />
<xs:element ref="defaultWhiteboardWidth"/>
<xs:element ref="defaultWhiteboardHeight"/>
<xs:element ref="availableCameraResolutions"/>
@@ -131,12 +133,14 @@
<xs:element name="showWindowEffect" type="xs:NCName"/>
<xs:element name="showRecording" type="xs:NCName"/>
<xs:element name="firstdayinweek" type="xs:integer"/>
+ <xs:element name="codecType" type="xs:string"/>
<xs:element name="framesPerSecond" type="xs:integer"/>
<xs:element name="bandwidthNeededNormal" type="xs:integer"/>
<xs:element name="bandwidthNeededBest" type="xs:integer"/>
<xs:element name="camQualityNormal" type="xs:integer"/>
<xs:element name="camQualityBest" type="xs:integer"/>
<xs:element name="microphoneRateBest" type="xs:integer"/>
+ <xs:element name="echoSuppression" type="xs:string"/>
<xs:element name="echoPath">
<xs:annotation>
<xs:documentation>
Index: WebContent/openmeetings/config.xml
===================================================================
--- WebContent/openmeetings/config.xml (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/openmeetings/config.xml (.../branches/2.1) (revision 1490221)
@@ -188,6 +188,15 @@
#############################################################################
-->
+<!-- Camera Settings for codecType
+
+ codecType possible values:
+ h263
+ h264
+ If you want to use red5sip, set value to "h264"
+ -->
+<codecType>h264</codecType>
+
<!-- Camera Settings for the FramesPerSecond
fps:Number [optional] - The requested rate at which the camera should capture
@@ -247,6 +256,11 @@
<echoPath>128</echoPath>
<!--
+ Set "true" or "false" to enable/disable microphone echo suppression
+ -->
+<echoSuppression>true</echoSuppression>
+
+<!--
The Size of the Whiteboard
The Whiteboard has scrollbars so you may increase the size without problems
-->
Index: WebContent/openmeetings/images/ajax-loader.gif
===================================================================
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
Index: WebContent/openmeetings/images/ajax-loader.gif
===================================================================
--- WebContent/openmeetings/images/ajax-loader.gif (.../tags/2.1RC3) (revision 1490221)
+++ WebContent/openmeetings/images/ajax-loader.gif (.../branches/2.1) (revision 1490221)
Property changes on: WebContent/openmeetings/images/ajax-loader.gif
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/octet-stream
\ No newline at end of property
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment