You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2017/05/18 05:36:24 UTC

[17/26] openmeetings git commit: Normalize all the line endings

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java
----------------------------------------------------------------------
diff --git a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java
index ad8b691..0b62a7e 100644
--- a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java
+++ b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/ScreenV1Encoder.java
@@ -1,202 +1,202 @@
-/*
- * 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.screenshare;
-
-import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeX;
-import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeY;
-import static org.red5.io.IoConstants.FLAG_CODEC_SCREEN;
-import static org.red5.io.IoConstants.FLAG_FRAMETYPE_INTERFRAME;
-import static org.red5.io.IoConstants.FLAG_FRAMETYPE_KEYFRAME;
-
-import java.awt.Rectangle;
-import java.awt.Robot;
-import java.awt.image.BufferedImage;
-import java.io.ByteArrayOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.util.zip.Deflater;
-
-import org.apache.mina.core.buffer.IoBuffer;
-import org.red5.server.net.rtmp.event.VideoData;
-
-public class ScreenV1Encoder extends BaseScreenEncoder {
-	private int[][] last = null;
-	private static int KEY_FRAME_INDEX = 25;
-	private static int DEFAULT_BLOCK_SIZE = 32;
-	private static int DEFAULT_SCREEN_WIDTH = 1920;
-	private static int DEFAULT_SCREEN_HEIGHT = 1080;
-	private int keyFrameIndex;
-	private int frameCount = 0;
-	private int blockSize;
-	private ByteArrayOutputStream ba = new ByteArrayOutputStream(50 + 3 * DEFAULT_SCREEN_WIDTH * DEFAULT_SCREEN_HEIGHT);
-	private byte[] areaBuf = null;
-	private Deflater d = new Deflater(Deflater.DEFAULT_COMPRESSION);
-	private byte[] zipBuf = null;
-	private VideoData unalteredFrame = null;
-	
-	public ScreenV1Encoder() {
-		this(KEY_FRAME_INDEX, DEFAULT_BLOCK_SIZE);
-	}
-	
-	public ScreenV1Encoder(int keyFrameIndex) {
-		this(keyFrameIndex, DEFAULT_BLOCK_SIZE);
-	}
-	
-	//will create square blocks
-	public ScreenV1Encoder(int keyFrameIndex, int blockSize) {
-		this.keyFrameIndex = keyFrameIndex;
-		if (blockSize < 16 || blockSize > 256 || blockSize % 16 != 0) {
-			throw new RuntimeException("Invalid block size passed: " + blockSize + " should be: 'from 16 to 256 in multiples of 16'");
-		}
-		this.blockSize = blockSize;
-
-		areaBuf = new byte[3 * blockSize * blockSize];
-		zipBuf = new byte[3 * blockSize * blockSize];
-	}
-
-	private static VideoData getData(byte[] data) {
-		IoBuffer buf = IoBuffer.allocate(data.length);
-		buf.clear();
-		buf.put(data);
-		buf.flip();
-		return new VideoData(buf);
-	}
-	
-	@Override
-	public void createUnalteredFrame() throws IOException {
-		if (last == null) {
-			return;
-		}
-		if (unalteredFrame == null) {
-			ByteArrayOutputStream ba = new ByteArrayOutputStream(200);
-			
-			Rectangle _area = new Rectangle(resizeX, resizeY);
-			//header
-			ba.write(getTag(FLAG_FRAMETYPE_INTERFRAME, FLAG_CODEC_SCREEN));
-			writeShort(ba, _area.width + ((blockSize / 16 - 1) << 12));
-			writeShort(ba, _area.height + ((blockSize / 16 - 1) << 12));
-			Rectangle area = getNextBlock(_area, null);
-			while (area.width > 0 && area.height > 0) {
-				writeShort(ba, 0);
-				area = getNextBlock(_area, area);
-			}
-			unalteredFrame = getData(ba.toByteArray());
-		}
-	}
-	
-	@Override
-	public VideoData getUnalteredFrame() {
-		if (unalteredFrame != null && (frameCount % keyFrameIndex) != 0) {
-			frameCount++;
-		}
-		return unalteredFrame;
-	}
-	
-	@Override
-	public synchronized VideoData encode(int[][] img) throws IOException {
-		ba.reset();
-		Rectangle imgArea = new Rectangle(img.length, img[0].length);
-		Rectangle area = getNextBlock(imgArea, null);
-		boolean isKeyFrame = (frameCount++ % keyFrameIndex) == 0 || last == null;
-		
-		//header
-		ba.write(getTag(isKeyFrame ? FLAG_FRAMETYPE_KEYFRAME : FLAG_FRAMETYPE_INTERFRAME, FLAG_CODEC_SCREEN));
-		writeShort(ba, imgArea.width + ((blockSize / 16 - 1) << 12));
-		writeShort(ba, imgArea.height + ((blockSize / 16 - 1) << 12));
-		
-		while (area.width > 0 && area.height > 0) {
-			writeBytesIfChanged(ba, isKeyFrame, img, area);
-			area = getNextBlock(imgArea, area);
-		}
-		last = img;
-		return getData(ba.toByteArray());
-	}
-	
-	@Override
-	public void reset() {
-		last = null;
-		unalteredFrame = null;
-	}
-	
-	private Rectangle getNextBlock(Rectangle img, Rectangle _prev) {
-		Rectangle prev;
-		if (_prev == null) {
-			prev = new Rectangle(0, Math.max(0, img.height - blockSize), blockSize, blockSize);
-		} else {
-			prev = new Rectangle(_prev);
-			if (prev.x + prev.width == img.getWidth()) {
-				if (prev.y == 0) return new Rectangle(); //the end of the image
-				//next row
-				prev.x = 0; //reset position
-				prev.width = blockSize; //reset width
-				prev.height = (prev.y > blockSize ? blockSize : prev.y);
-				prev.y -= prev.height;
-			} else {
-				prev.x += blockSize;
-			}
-		}
-		return img.intersection(prev); 
-	}
-
-	private void writeBytesIfChanged(ByteArrayOutputStream ba, boolean isKeyFrame, int[][] img, Rectangle area) throws IOException {
-		boolean changed = isKeyFrame;
-		int count = 0;
-		for (int y = area.y + area.height - 1; y >= area.y; --y) {
-			for (int x = area.x; x < area.x + area.width; ++x) {
-				int pixel = img[x][y];
-				if (!changed && (last == null || pixel != last[x][y])) {
-					changed = true;
-				}
-				areaBuf[count++] = (byte)(pixel & 0xFF);			// Blue component
-				areaBuf[count++] = (byte)((pixel >> 8) & 0xFF);		// Green component
-				areaBuf[count++] = (byte)((pixel >> 16) & 0xFF);	// Red component
-			}
-		}
-		if (changed) {
-			d.reset();
-			d.setInput(areaBuf, 0, count);
-			d.finish();
-			int written = d.deflate(zipBuf);
-			writeShort(ba, written);
-			ba.write(zipBuf, 0, written);
-		} else {
-			writeShort(ba, 0);
-		}
-	}
-
-	public int getTag(final int frame, final int codec) {
-		return ((frame & 0x0F) << 4) + ((codec & 0x0F) << 0);
-	}
-	
-	private static void writeShort(OutputStream os, final int n) throws IOException {
-		os.write((n >> 8) & 0xFF);
-		os.write((n >> 0) & 0xFF);
-	}
-	
-	public static int[][] getImage(Rectangle screen, Robot robot) {
-		int[][] buffer = new int[resizeX][resizeY];
-		BufferedImage image = resize(robot.createScreenCapture(screen), new Rectangle(resizeX, resizeY));
-		for (int x = 0; x < image.getWidth(); ++x) {
-			for (int y = 0; y < image.getHeight(); ++y) {
-				buffer[x][y] = image.getRGB(x, y);
-			}
-		}
-		return buffer;
-	}
-}
+/*
+ * 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.screenshare;
+
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeX;
+import static org.apache.openmeetings.screenshare.gui.ScreenDimensions.resizeY;
+import static org.red5.io.IoConstants.FLAG_CODEC_SCREEN;
+import static org.red5.io.IoConstants.FLAG_FRAMETYPE_INTERFRAME;
+import static org.red5.io.IoConstants.FLAG_FRAMETYPE_KEYFRAME;
+
+import java.awt.Rectangle;
+import java.awt.Robot;
+import java.awt.image.BufferedImage;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.util.zip.Deflater;
+
+import org.apache.mina.core.buffer.IoBuffer;
+import org.red5.server.net.rtmp.event.VideoData;
+
+public class ScreenV1Encoder extends BaseScreenEncoder {
+	private int[][] last = null;
+	private static int KEY_FRAME_INDEX = 25;
+	private static int DEFAULT_BLOCK_SIZE = 32;
+	private static int DEFAULT_SCREEN_WIDTH = 1920;
+	private static int DEFAULT_SCREEN_HEIGHT = 1080;
+	private int keyFrameIndex;
+	private int frameCount = 0;
+	private int blockSize;
+	private ByteArrayOutputStream ba = new ByteArrayOutputStream(50 + 3 * DEFAULT_SCREEN_WIDTH * DEFAULT_SCREEN_HEIGHT);
+	private byte[] areaBuf = null;
+	private Deflater d = new Deflater(Deflater.DEFAULT_COMPRESSION);
+	private byte[] zipBuf = null;
+	private VideoData unalteredFrame = null;
+	
+	public ScreenV1Encoder() {
+		this(KEY_FRAME_INDEX, DEFAULT_BLOCK_SIZE);
+	}
+	
+	public ScreenV1Encoder(int keyFrameIndex) {
+		this(keyFrameIndex, DEFAULT_BLOCK_SIZE);
+	}
+	
+	//will create square blocks
+	public ScreenV1Encoder(int keyFrameIndex, int blockSize) {
+		this.keyFrameIndex = keyFrameIndex;
+		if (blockSize < 16 || blockSize > 256 || blockSize % 16 != 0) {
+			throw new RuntimeException("Invalid block size passed: " + blockSize + " should be: 'from 16 to 256 in multiples of 16'");
+		}
+		this.blockSize = blockSize;
+
+		areaBuf = new byte[3 * blockSize * blockSize];
+		zipBuf = new byte[3 * blockSize * blockSize];
+	}
+
+	private static VideoData getData(byte[] data) {
+		IoBuffer buf = IoBuffer.allocate(data.length);
+		buf.clear();
+		buf.put(data);
+		buf.flip();
+		return new VideoData(buf);
+	}
+	
+	@Override
+	public void createUnalteredFrame() throws IOException {
+		if (last == null) {
+			return;
+		}
+		if (unalteredFrame == null) {
+			ByteArrayOutputStream ba = new ByteArrayOutputStream(200);
+			
+			Rectangle _area = new Rectangle(resizeX, resizeY);
+			//header
+			ba.write(getTag(FLAG_FRAMETYPE_INTERFRAME, FLAG_CODEC_SCREEN));
+			writeShort(ba, _area.width + ((blockSize / 16 - 1) << 12));
+			writeShort(ba, _area.height + ((blockSize / 16 - 1) << 12));
+			Rectangle area = getNextBlock(_area, null);
+			while (area.width > 0 && area.height > 0) {
+				writeShort(ba, 0);
+				area = getNextBlock(_area, area);
+			}
+			unalteredFrame = getData(ba.toByteArray());
+		}
+	}
+	
+	@Override
+	public VideoData getUnalteredFrame() {
+		if (unalteredFrame != null && (frameCount % keyFrameIndex) != 0) {
+			frameCount++;
+		}
+		return unalteredFrame;
+	}
+	
+	@Override
+	public synchronized VideoData encode(int[][] img) throws IOException {
+		ba.reset();
+		Rectangle imgArea = new Rectangle(img.length, img[0].length);
+		Rectangle area = getNextBlock(imgArea, null);
+		boolean isKeyFrame = (frameCount++ % keyFrameIndex) == 0 || last == null;
+		
+		//header
+		ba.write(getTag(isKeyFrame ? FLAG_FRAMETYPE_KEYFRAME : FLAG_FRAMETYPE_INTERFRAME, FLAG_CODEC_SCREEN));
+		writeShort(ba, imgArea.width + ((blockSize / 16 - 1) << 12));
+		writeShort(ba, imgArea.height + ((blockSize / 16 - 1) << 12));
+		
+		while (area.width > 0 && area.height > 0) {
+			writeBytesIfChanged(ba, isKeyFrame, img, area);
+			area = getNextBlock(imgArea, area);
+		}
+		last = img;
+		return getData(ba.toByteArray());
+	}
+	
+	@Override
+	public void reset() {
+		last = null;
+		unalteredFrame = null;
+	}
+	
+	private Rectangle getNextBlock(Rectangle img, Rectangle _prev) {
+		Rectangle prev;
+		if (_prev == null) {
+			prev = new Rectangle(0, Math.max(0, img.height - blockSize), blockSize, blockSize);
+		} else {
+			prev = new Rectangle(_prev);
+			if (prev.x + prev.width == img.getWidth()) {
+				if (prev.y == 0) return new Rectangle(); //the end of the image
+				//next row
+				prev.x = 0; //reset position
+				prev.width = blockSize; //reset width
+				prev.height = (prev.y > blockSize ? blockSize : prev.y);
+				prev.y -= prev.height;
+			} else {
+				prev.x += blockSize;
+			}
+		}
+		return img.intersection(prev); 
+	}
+
+	private void writeBytesIfChanged(ByteArrayOutputStream ba, boolean isKeyFrame, int[][] img, Rectangle area) throws IOException {
+		boolean changed = isKeyFrame;
+		int count = 0;
+		for (int y = area.y + area.height - 1; y >= area.y; --y) {
+			for (int x = area.x; x < area.x + area.width; ++x) {
+				int pixel = img[x][y];
+				if (!changed && (last == null || pixel != last[x][y])) {
+					changed = true;
+				}
+				areaBuf[count++] = (byte)(pixel & 0xFF);			// Blue component
+				areaBuf[count++] = (byte)((pixel >> 8) & 0xFF);		// Green component
+				areaBuf[count++] = (byte)((pixel >> 16) & 0xFF);	// Red component
+			}
+		}
+		if (changed) {
+			d.reset();
+			d.setInput(areaBuf, 0, count);
+			d.finish();
+			int written = d.deflate(zipBuf);
+			writeShort(ba, written);
+			ba.write(zipBuf, 0, written);
+		} else {
+			writeShort(ba, 0);
+		}
+	}
+
+	public int getTag(final int frame, final int codec) {
+		return ((frame & 0x0F) << 4) + ((codec & 0x0F) << 0);
+	}
+	
+	private static void writeShort(OutputStream os, final int n) throws IOException {
+		os.write((n >> 8) & 0xFF);
+		os.write((n >> 0) & 0xFF);
+	}
+	
+	public static int[][] getImage(Rectangle screen, Robot robot) {
+		int[][] buffer = new int[resizeX][resizeY];
+		BufferedImage image = resize(robot.createScreenCapture(screen), new Rectangle(resizeX, resizeY));
+		for (int x = 0; x < image.getWidth(); ++x) {
+			for (int y = 0; y < image.getHeight(); ++y) {
+				buffer[x][y] = image.getRGB(x, y);
+			}
+		}
+		return buffer;
+	}
+}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java
----------------------------------------------------------------------
diff --git a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java
index 1c442dd..33c8ae5 100644
--- a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java
+++ b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/MouseListenerable.java
@@ -1,32 +1,32 @@
-/*
- * 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.screenshare.gui;
-
-import java.awt.event.MouseAdapter;
-
-import javax.swing.JLabel;
-
-public class MouseListenerable extends JLabel {
-	private static final long serialVersionUID = 1L;
-
-	public void addListener(MouseAdapter listner) {
-		addMouseListener(listner);
-		addMouseMotionListener(listner);
-	}
+/*
+ * 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.screenshare.gui;
+
+import java.awt.event.MouseAdapter;
+
+import javax.swing.JLabel;
+
+public class MouseListenerable extends JLabel {
+	private static final long serialVersionUID = 1L;
+
+	public void addListener(MouseAdapter listner) {
+		addMouseListener(listner);
+		addMouseMotionListener(listner);
+	}
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java
----------------------------------------------------------------------
diff --git a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java
index 22e9edc..d349e16 100644
--- a/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java
+++ b/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screenshare/gui/NumberSpinner.java
@@ -1,35 +1,35 @@
-/*
- * 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.screenshare.gui;
-
-import javax.swing.JSpinner;
-import javax.swing.SpinnerNumberModel;
-
-public class NumberSpinner extends JSpinner {
-	private static final long serialVersionUID = 1L;
-
-	public NumberSpinner(int value, int min, int max, int step) {
-		super(new SpinnerNumberModel(value, min, max, step));
-	}
-	
-	@Override
-	public Integer getValue() {
-		return (Integer)super.getValue();
-	}
-}
+/*
+ * 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.screenshare.gui;
+
+import javax.swing.JSpinner;
+import javax.swing.SpinnerNumberModel;
+
+public class NumberSpinner extends JSpinner {
+	private static final long serialVersionUID = 1L;
+
+	public NumberSpinner(int value, int min, int max, int step) {
+		super(new SpinnerNumberModel(value, min, max, step));
+	}
+	
+	@Override
+	public Integer getValue() {
+		return (Integer)super.getValue();
+	}
+}

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-screenshare/src/main/resources/logback.xsd
----------------------------------------------------------------------
diff --git a/openmeetings-screenshare/src/main/resources/logback.xsd b/openmeetings-screenshare/src/main/resources/logback.xsd
index 7e75655..cc5ad1c 100644
--- a/openmeetings-screenshare/src/main/resources/logback.xsd
+++ b/openmeetings-screenshare/src/main/resources/logback.xsd
@@ -1,109 +1,109 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-  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.
-  
--->
-<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
-  <xs:element name="configuration">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element ref="contextName"/>
-        <xs:element ref="jmxConfigurator"/>
-        <xs:element maxOccurs="unbounded" ref="appender"/>
-        <xs:element maxOccurs="unbounded" ref="logger"/>
-        <xs:element ref="root"/>
-      </xs:sequence>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="contextName" type="xs:string"/>
-  <xs:element name="jmxConfigurator">
-    <xs:complexType>
-      <xs:attribute name="contextName" use="required"/>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="appender">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:sequence minOccurs="0">
-          <xs:element ref="File"/>
-          <xs:element ref="Append"/>
-          <xs:element ref="Encoding"/>
-          <xs:element ref="BufferedIO"/>
-          <xs:element ref="ImmediateFlush"/>
-        </xs:sequence>
-        <xs:element ref="layout"/>
-      </xs:sequence>
-      <xs:attribute name="class" use="required"/>
-      <xs:attribute name="name" use="required" type="xs:NCName"/>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="File" type="xs:string"/>
-  <xs:element name="Append" type="xs:boolean"/>
-  <xs:element name="Encoding" type="xs:NCName"/>
-  <xs:element name="BufferedIO" type="xs:boolean"/>
-  <xs:element name="ImmediateFlush" type="xs:boolean"/>
-  <xs:element name="layout">
-    <xs:complexType>
-      <xs:choice>
-        <xs:element ref="Pattern"/>
-        <xs:element ref="pattern"/>
-      </xs:choice>
-      <xs:attribute name="class" use="required"/>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="Pattern" type="xs:string"/>
-  <xs:element name="pattern" type="xs:string"/>
-  <xs:element name="logger">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element maxOccurs="unbounded" minOccurs="0" ref="appender-ref"/>
-        <xs:element maxOccurs="1" minOccurs="0" ref="level"/>
-      </xs:sequence>
-      <xs:attribute name="name" use="required" type="xs:NCName"/>
-      <xs:attribute name="level" type="LoggerLevels" use="optional"/>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="root">
-    <xs:complexType>
-      <xs:sequence>
-        <xs:element minOccurs="0" maxOccurs="unbounded" ref="appender-ref"/>
-      </xs:sequence>
-      <xs:attribute name="level" type="LoggerLevels" use="optional"/>
-    </xs:complexType>
-  </xs:element>
-  <xs:element name="appender-ref">
-    <xs:complexType>
-      <xs:attribute name="ref" use="required" type="xs:NCName"/>
-    </xs:complexType>
-  </xs:element>
-  <xs:complexType name="level">
-    <xs:sequence>
-      <xs:element ref="level"/>
-    </xs:sequence>
-  </xs:complexType>
-  <xs:element name="level">
-    <xs:complexType>
-      <xs:attribute name="value" use="required" type="xs:NCName"/>
-    </xs:complexType>
-  </xs:element>
-  <xs:simpleType name="LoggerLevels">
-    <xs:restriction base="xs:string">
-      <xs:pattern value="off|OFF|all|ALL|inherited|INHERITED|null|NULL|error|ERROR|warn|WARN|info|INFO|debug|DEBUG|trace|TRACE"/>
-    </xs:restriction>
-  </xs:simpleType>
-</xs:schema>
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  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.
+  
+-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
+  <xs:element name="configuration">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element ref="contextName"/>
+        <xs:element ref="jmxConfigurator"/>
+        <xs:element maxOccurs="unbounded" ref="appender"/>
+        <xs:element maxOccurs="unbounded" ref="logger"/>
+        <xs:element ref="root"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="contextName" type="xs:string"/>
+  <xs:element name="jmxConfigurator">
+    <xs:complexType>
+      <xs:attribute name="contextName" use="required"/>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="appender">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:sequence minOccurs="0">
+          <xs:element ref="File"/>
+          <xs:element ref="Append"/>
+          <xs:element ref="Encoding"/>
+          <xs:element ref="BufferedIO"/>
+          <xs:element ref="ImmediateFlush"/>
+        </xs:sequence>
+        <xs:element ref="layout"/>
+      </xs:sequence>
+      <xs:attribute name="class" use="required"/>
+      <xs:attribute name="name" use="required" type="xs:NCName"/>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="File" type="xs:string"/>
+  <xs:element name="Append" type="xs:boolean"/>
+  <xs:element name="Encoding" type="xs:NCName"/>
+  <xs:element name="BufferedIO" type="xs:boolean"/>
+  <xs:element name="ImmediateFlush" type="xs:boolean"/>
+  <xs:element name="layout">
+    <xs:complexType>
+      <xs:choice>
+        <xs:element ref="Pattern"/>
+        <xs:element ref="pattern"/>
+      </xs:choice>
+      <xs:attribute name="class" use="required"/>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="Pattern" type="xs:string"/>
+  <xs:element name="pattern" type="xs:string"/>
+  <xs:element name="logger">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element maxOccurs="unbounded" minOccurs="0" ref="appender-ref"/>
+        <xs:element maxOccurs="1" minOccurs="0" ref="level"/>
+      </xs:sequence>
+      <xs:attribute name="name" use="required" type="xs:NCName"/>
+      <xs:attribute name="level" type="LoggerLevels" use="optional"/>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="root">
+    <xs:complexType>
+      <xs:sequence>
+        <xs:element minOccurs="0" maxOccurs="unbounded" ref="appender-ref"/>
+      </xs:sequence>
+      <xs:attribute name="level" type="LoggerLevels" use="optional"/>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="appender-ref">
+    <xs:complexType>
+      <xs:attribute name="ref" use="required" type="xs:NCName"/>
+    </xs:complexType>
+  </xs:element>
+  <xs:complexType name="level">
+    <xs:sequence>
+      <xs:element ref="level"/>
+    </xs:sequence>
+  </xs:complexType>
+  <xs:element name="level">
+    <xs:complexType>
+      <xs:attribute name="value" use="required" type="xs:NCName"/>
+    </xs:complexType>
+  </xs:element>
+  <xs:simpleType name="LoggerLevels">
+    <xs:restriction base="xs:string">
+      <xs:pattern value="off|OFF|all|ALL|inherited|INHERITED|null|NULL|error|ERROR|warn|WARN|info|INFO|debug|DEBUG|trace|TRACE"/>
+    </xs:restriction>
+  </xs:simpleType>
+</xs:schema>

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-screenshare/src/site/site.xml
----------------------------------------------------------------------
diff --git a/openmeetings-screenshare/src/site/site.xml b/openmeetings-screenshare/src/site/site.xml
index b7a0eae..dd3dc53 100644
--- a/openmeetings-screenshare/src/site/site.xml
+++ b/openmeetings-screenshare/src/site/site.xml
@@ -1,39 +1,39 @@
-<?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.
- -->
-<project xmlns="http://maven.apache.org/DECORATION/1.7.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.7.0 http://maven.apache.org/xsd/decoration-1.7.0.xsd"
-  name="Apache OpenMeetings Project">
-
-	<body>
-		<menu ref="parent"/>
-		<menu name="Project">
-			<item name="About" href="/index.html" />
-			<item name="Info" href="/project-info.html" />
-			<item name="Summary" href="/project-summary.html" />
-			<item name="License" href="/license.html" />
-			<item name="Dependencies" href="/dependencies.html" />
-			<item name="Dependency Convergence" href="/dependency-convergence.html" />
-			<item name="RAT Report" href="/rat-report.html" />
-		</menu>
-	</body>
-	<custom>
-		<reflowSkin>
-			<bottomNav maxSpan="12">
-				<column>Parent Project</column>
-				<column>Project</column>
-			</bottomNav>
-		</reflowSkin>
-	</custom>
-</project>
+<?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.
+ -->
+<project xmlns="http://maven.apache.org/DECORATION/1.7.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.7.0 http://maven.apache.org/xsd/decoration-1.7.0.xsd"
+  name="Apache OpenMeetings Project">
+
+	<body>
+		<menu ref="parent"/>
+		<menu name="Project">
+			<item name="About" href="/index.html" />
+			<item name="Info" href="/project-info.html" />
+			<item name="Summary" href="/project-summary.html" />
+			<item name="License" href="/license.html" />
+			<item name="Dependencies" href="/dependencies.html" />
+			<item name="Dependency Convergence" href="/dependency-convergence.html" />
+			<item name="RAT Report" href="/rat-report.html" />
+		</menu>
+	</body>
+	<custom>
+		<reflowSkin>
+			<bottomNav maxSpan="12">
+				<column>Parent Project</column>
+				<column>Project</column>
+			</bottomNav>
+		</reflowSkin>
+	</custom>
+</project>

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-server/src/main/assembly/jrebel/red5-debug.bat
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/main/assembly/jrebel/red5-debug.bat b/openmeetings-server/src/main/assembly/jrebel/red5-debug.bat
index 9087e9e..59e8e89 100644
--- a/openmeetings-server/src/main/assembly/jrebel/red5-debug.bat
+++ b/openmeetings-server/src/main/assembly/jrebel/red5-debug.bat
@@ -1,19 +1,19 @@
-REM #############################################
-REM Licensed under the Apache License, Version 2.0 (the "License");
-REM you may not use this file except in compliance with the License.
-REM You may obtain a copy of the License at
-REM
-REM     http://www.apache.org/licenses/LICENSE-2.0
-REM
-REM Unless required by applicable law or agreed to in writing, software
-REM distributed under the License is distributed on an "AS IS" BASIS,
-REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-REM See the License for the specific language governing permissions and
-REM limitations under the License.
-REM #############################################
-@echo off
-
-if NOT DEFINED RED5_HOME set RED5_HOME=%~dp0
-
-set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n -javaagent:@jrebel.home@\jrebel.jar -Drebel.remoting_plugin=true -Dproject.root=@project.home@
-%RED5_HOME%\red5.bat
+REM #############################################
+REM Licensed under the Apache License, Version 2.0 (the "License");
+REM you may not use this file except in compliance with the License.
+REM You may obtain a copy of the License at
+REM
+REM     http://www.apache.org/licenses/LICENSE-2.0
+REM
+REM Unless required by applicable law or agreed to in writing, software
+REM distributed under the License is distributed on an "AS IS" BASIS,
+REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+REM See the License for the specific language governing permissions and
+REM limitations under the License.
+REM #############################################
+@echo off
+
+if NOT DEFINED RED5_HOME set RED5_HOME=%~dp0
+
+set JAVA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n -javaagent:@jrebel.home@\jrebel.jar -Drebel.remoting_plugin=true -Dproject.root=@project.home@
+%RED5_HOME%\red5.bat

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-server/src/main/assembly/scripts/admin.bat
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/main/assembly/scripts/admin.bat b/openmeetings-server/src/main/assembly/scripts/admin.bat
index 8ae8ec2..c5a47c2 100644
--- a/openmeetings-server/src/main/assembly/scripts/admin.bat
+++ b/openmeetings-server/src/main/assembly/scripts/admin.bat
@@ -1,21 +1,21 @@
-REM #############################################
-REM Licensed under the Apache License, Version 2.0 (the "License");
-REM you may not use this file except in compliance with the License.
-REM You may obtain a copy of the License at
-REM
-REM     http://www.apache.org/licenses/LICENSE-2.0
-REM
-REM Unless required by applicable law or agreed to in writing, software
-REM distributed under the License is distributed on an "AS IS" BASIS,
-REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-REM See the License for the specific language governing permissions and
-REM limitations under the License.
-REM #############################################
-@echo off
-set RED5_HOME=%~dp0
-set OM_CONTEXT=openmeetings
-
-set CLASSPATH=%RED5_HOME%\*;%RED5_HOME%\conf;%RED5_HOME%\plugins\*;%RED5_HOME%\lib\*;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF\lib\*;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF\classes
-
-java -cp "%CLASSPATH%" -Dcontext=%OM_CONTEXT% -Dlogback.ContextSelector=org.red5.logging.LoggingContextSelector org.apache.openmeetings.cli.Admin %*
-
+REM #############################################
+REM Licensed under the Apache License, Version 2.0 (the "License");
+REM you may not use this file except in compliance with the License.
+REM You may obtain a copy of the License at
+REM
+REM     http://www.apache.org/licenses/LICENSE-2.0
+REM
+REM Unless required by applicable law or agreed to in writing, software
+REM distributed under the License is distributed on an "AS IS" BASIS,
+REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+REM See the License for the specific language governing permissions and
+REM limitations under the License.
+REM #############################################
+@echo off
+set RED5_HOME=%~dp0
+set OM_CONTEXT=openmeetings
+
+set CLASSPATH=%RED5_HOME%\*;%RED5_HOME%\conf;%RED5_HOME%\plugins\*;%RED5_HOME%\lib\*;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF\lib\*;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF\classes
+
+java -cp "%CLASSPATH%" -Dcontext=%OM_CONTEXT% -Dlogback.ContextSelector=org.red5.logging.LoggingContextSelector org.apache.openmeetings.cli.Admin %*
+

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-server/src/site/site.xml
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/site/site.xml b/openmeetings-server/src/site/site.xml
index d36a3ab..89bd6f1 100644
--- a/openmeetings-server/src/site/site.xml
+++ b/openmeetings-server/src/site/site.xml
@@ -1,140 +1,140 @@
-<?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.
- -->
-<project xmlns="http://maven.apache.org/DECORATION/1.6.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.6.0 http://maven.apache.org/xsd/decoration-1.6.0.xsd"
-  name="Apache OpenMeetings Project">
-
-	<body>
-		<menu name="General">
-			<item name="Home" href="/index.html"/>
-			<item name="License" href="/license.html"/>
-			<item name="ASF" href="http://www.apache.org/"/>
-			<item name="Call For Logo" href="/CallForLogo.html"/>
-			<item name="News archive" href="/NewsArchive.html"/>
-			<item name="Security" href="/security.html"/>
-			<item name="Commercial Support" href="/commercial-support.html"/>
-		</menu>
-		<menu name="Installation">
-			<item name="Installation" href="/installation.html" />
-			<item name="Upgrade" href="/Upgrade.html" />
-			<item name="Tutorials" href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools" />
-			<item name="Command Line Admin" href="/CommandLineAdmin.html" />
-		</menu>
-		<menu name="Community">
-			<item name="Get Involved" href="/get-involved.html" />
-			<item name="Committers" href="/team-list.html" />
-			<item name="Our Users" href="/OurUsers.html" />
-			<item name="Mailing Lists" href="/mail-lists.html" />
-			<item name="Wiki" href="http://cwiki.apache.org/confluence/display/OPENMEETINGS/" />
-		</menu>
-		<menu name="Development">
-			<item name="Source Code" href="/source-repository.html" />
-			<item name="Bugs / Issues" href="/issue-tracking.html" />
-			<item name="Dependencies" href="/dependencies.html" />
-			<item name="Continuous Integration" href="/integration.html" />
-			<item name="Build Instructions 3.0.x" href="/BuildInstructions_3.0.x.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>
-		<menu name="Configuration">
-			<item name="Integration" href="#integration">
-				<item name="SOAP/REST API" href="/openmeetings-webservice/apidocs/index.html" target="_blank"/>
-				<item name="REST API Sample" href="/RestAPISample.html" />
-				<item name="Ldap and ADS" href="/LdapAndADS.html" />
-				<item name="OAuth2" href="/oauth2.html" />
-				<item name="VoIP and SIP" href="/voip-sip-integration.html" />
-				<item name="Errors table" href="/errorvalues.html" />
-			</item>
-			<item name="Plugins" href="#plugins">
-				<item name="Moodle Plugin" href="/MoodlePlugin.html" />
-				<item name="Sakai Plugin" href="/SakaiPlugin.html" />
-				<item name="Jira Plugin" href="/JiraPlugin.html" />
-				<item name="Joomla Plugin" href="/JoomlaPlugin.html" />
-				<item name="Drupal Plugin" href="/DrupalPlugin.html" />
-				<item name="Bitrix Plugin" href="/BitrixPlugin.html" />
-				<item name="Confluence Plugin" href="/ConfluencePlugin.html" />
-				<item name="SugarCRM Plugin" href="/SugarCRMPlugin.html" />
-				<item name="Redmine Plugin" href="/RedminePlugin.html" />
-			</item>
-			<item name="DB Sample Configurations" href="#db">
-				<item name="Apache Derby" href="/ApacheDerbyConfig.html" />
-				<item name="IBM DB2" href="/IBMDB2Config.html" />
-				<item name="Oracle" href="/OracleConfig.html" />
-				<item name="MySQL" href="/MySQLConfig.html" />
-				<item name="Postgres" href="/PostgresConfig.html" />
-				<item name="MSSQL" href="/MSSQLConfig.html" />
-			</item>
-			<item name="Localization and languages" href="#localization">
-				<item name="Internationalisation" href="/Internationalisation.html" />
-				<item name="LanguageEditor" href="/LanguageEditor.html" />
-				<item name="TimeZoneHandling" href="/TimeZoneHandling.html" />
-				<item name="EditTemplates" href="/EditTemplates.html" />
-			</item>
-			<item name="NAT Port Settings" href="#port">
-				<item name="Port settings" href="/PortSettings.html" />
-			</item>
-			<item name="Performance" href="#performance">
-				<item name="JVM performance tuning" href="/JVMPerformanceTuning.html" />
-				<item name="Network bandwidth calculator" href="/NetworkCalculator.html" />
-			</item>
-			<item name="User Interface" href="#interface">
-				<item name="Themes" href="/themes-and-branding.html" />
-				<item name="Dashboard" href="/Dashboard.html" />
-				<item name="Webcam resolutions" href="/WebcamResolutions.html" />
-				<item name="Room layout options" href="/ConferenceRoomLayoutOptions.html" />
-				<item name="Hot Keys" href="/HotKeys.html" />
-			</item>
-			<item name="Customization" href="#customize">
-				<item name="Webapp name/path" href="/WebappNamePath.html" />
-				<item name="Navigation" href="/Navigation.html" />
-				<item name="Calendar and timezone" href="/CalendarAndTimezone.html" />
-				<item name="Custom room type" href="/CustomRoomTypeHowTo.html" />
-				<item name="Custom crypt mechanism" href="/CustomCryptMechanism.html" />
-				<item name="General Configuration" href="/GeneralConfiguration.html" />
-			</item>
-			<item name="Security" href="#security">
-				<item name="Restricted Access" href="/RestrictedAccess.html" />
-				<item name="RTMPS and HTTPS" href="/RTMPSAndHTTPS.html" />
-			</item>
-			<item name="Converters" href="#convert">
-				<item name="OpenOffice Converter" href="/OpenOfficeConverter.html" />
-			</item>
-			<item name="Clustering" href="#cluster">
-				<item name="Clustering" href="/Clustering.html" />
-			</item>
-			<item name="Misc" href="#misc">
-				<item name="Get version info" href="/GetVersionInfo.html" />
-			</item>
-		</menu>
-	</body>
-	<custom>
-		<reflowSkin>
-			<pages>
-				<index>
-					<sections>
-						<carousel/>
-					</sections>
-				</index>
-			</pages>
-			<endContent>
-				<script type="text/javascript" src="$resourcePath/js/jquery-ui.min.js"></script>
-				<script type="text/javascript" src="$resourcePath/js/netcalc.js"></script>
-			</endContent>
-		</reflowSkin>
-	</custom>
-</project>
+<?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.
+ -->
+<project xmlns="http://maven.apache.org/DECORATION/1.6.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/DECORATION/1.6.0 http://maven.apache.org/xsd/decoration-1.6.0.xsd"
+  name="Apache OpenMeetings Project">
+
+	<body>
+		<menu name="General">
+			<item name="Home" href="/index.html"/>
+			<item name="License" href="/license.html"/>
+			<item name="ASF" href="http://www.apache.org/"/>
+			<item name="Call For Logo" href="/CallForLogo.html"/>
+			<item name="News archive" href="/NewsArchive.html"/>
+			<item name="Security" href="/security.html"/>
+			<item name="Commercial Support" href="/commercial-support.html"/>
+		</menu>
+		<menu name="Installation">
+			<item name="Installation" href="/installation.html" />
+			<item name="Upgrade" href="/Upgrade.html" />
+			<item name="Tutorials" href="https://cwiki.apache.org/confluence/display/OPENMEETINGS/Tutorials+for+installing+OpenMeetings+and+Tools" />
+			<item name="Command Line Admin" href="/CommandLineAdmin.html" />
+		</menu>
+		<menu name="Community">
+			<item name="Get Involved" href="/get-involved.html" />
+			<item name="Committers" href="/team-list.html" />
+			<item name="Our Users" href="/OurUsers.html" />
+			<item name="Mailing Lists" href="/mail-lists.html" />
+			<item name="Wiki" href="http://cwiki.apache.org/confluence/display/OPENMEETINGS/" />
+		</menu>
+		<menu name="Development">
+			<item name="Source Code" href="/source-repository.html" />
+			<item name="Bugs / Issues" href="/issue-tracking.html" />
+			<item name="Dependencies" href="/dependencies.html" />
+			<item name="Continuous Integration" href="/integration.html" />
+			<item name="Build Instructions 3.0.x" href="/BuildInstructions_3.0.x.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>
+		<menu name="Configuration">
+			<item name="Integration" href="#integration">
+				<item name="SOAP/REST API" href="/openmeetings-webservice/apidocs/index.html" target="_blank"/>
+				<item name="REST API Sample" href="/RestAPISample.html" />
+				<item name="Ldap and ADS" href="/LdapAndADS.html" />
+				<item name="OAuth2" href="/oauth2.html" />
+				<item name="VoIP and SIP" href="/voip-sip-integration.html" />
+				<item name="Errors table" href="/errorvalues.html" />
+			</item>
+			<item name="Plugins" href="#plugins">
+				<item name="Moodle Plugin" href="/MoodlePlugin.html" />
+				<item name="Sakai Plugin" href="/SakaiPlugin.html" />
+				<item name="Jira Plugin" href="/JiraPlugin.html" />
+				<item name="Joomla Plugin" href="/JoomlaPlugin.html" />
+				<item name="Drupal Plugin" href="/DrupalPlugin.html" />
+				<item name="Bitrix Plugin" href="/BitrixPlugin.html" />
+				<item name="Confluence Plugin" href="/ConfluencePlugin.html" />
+				<item name="SugarCRM Plugin" href="/SugarCRMPlugin.html" />
+				<item name="Redmine Plugin" href="/RedminePlugin.html" />
+			</item>
+			<item name="DB Sample Configurations" href="#db">
+				<item name="Apache Derby" href="/ApacheDerbyConfig.html" />
+				<item name="IBM DB2" href="/IBMDB2Config.html" />
+				<item name="Oracle" href="/OracleConfig.html" />
+				<item name="MySQL" href="/MySQLConfig.html" />
+				<item name="Postgres" href="/PostgresConfig.html" />
+				<item name="MSSQL" href="/MSSQLConfig.html" />
+			</item>
+			<item name="Localization and languages" href="#localization">
+				<item name="Internationalisation" href="/Internationalisation.html" />
+				<item name="LanguageEditor" href="/LanguageEditor.html" />
+				<item name="TimeZoneHandling" href="/TimeZoneHandling.html" />
+				<item name="EditTemplates" href="/EditTemplates.html" />
+			</item>
+			<item name="NAT Port Settings" href="#port">
+				<item name="Port settings" href="/PortSettings.html" />
+			</item>
+			<item name="Performance" href="#performance">
+				<item name="JVM performance tuning" href="/JVMPerformanceTuning.html" />
+				<item name="Network bandwidth calculator" href="/NetworkCalculator.html" />
+			</item>
+			<item name="User Interface" href="#interface">
+				<item name="Themes" href="/themes-and-branding.html" />
+				<item name="Dashboard" href="/Dashboard.html" />
+				<item name="Webcam resolutions" href="/WebcamResolutions.html" />
+				<item name="Room layout options" href="/ConferenceRoomLayoutOptions.html" />
+				<item name="Hot Keys" href="/HotKeys.html" />
+			</item>
+			<item name="Customization" href="#customize">
+				<item name="Webapp name/path" href="/WebappNamePath.html" />
+				<item name="Navigation" href="/Navigation.html" />
+				<item name="Calendar and timezone" href="/CalendarAndTimezone.html" />
+				<item name="Custom room type" href="/CustomRoomTypeHowTo.html" />
+				<item name="Custom crypt mechanism" href="/CustomCryptMechanism.html" />
+				<item name="General Configuration" href="/GeneralConfiguration.html" />
+			</item>
+			<item name="Security" href="#security">
+				<item name="Restricted Access" href="/RestrictedAccess.html" />
+				<item name="RTMPS and HTTPS" href="/RTMPSAndHTTPS.html" />
+			</item>
+			<item name="Converters" href="#convert">
+				<item name="OpenOffice Converter" href="/OpenOfficeConverter.html" />
+			</item>
+			<item name="Clustering" href="#cluster">
+				<item name="Clustering" href="/Clustering.html" />
+			</item>
+			<item name="Misc" href="#misc">
+				<item name="Get version info" href="/GetVersionInfo.html" />
+			</item>
+		</menu>
+	</body>
+	<custom>
+		<reflowSkin>
+			<pages>
+				<index>
+					<sections>
+						<carousel/>
+					</sections>
+				</index>
+			</pages>
+			<endContent>
+				<script type="text/javascript" src="$resourcePath/js/jquery-ui.min.js"></script>
+				<script type="text/javascript" src="$resourcePath/js/netcalc.js"></script>
+			</endContent>
+		</reflowSkin>
+	</custom>
+</project>

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-server/src/site/stylesheets/errortable.xsl
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/site/stylesheets/errortable.xsl b/openmeetings-server/src/site/stylesheets/errortable.xsl
index 5748361..dbf72de 100644
--- a/openmeetings-server/src/site/stylesheets/errortable.xsl
+++ b/openmeetings-server/src/site/stylesheets/errortable.xsl
@@ -1,67 +1,67 @@
-<?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.
- -->
-<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
-	<xsl:param name="languagesDir"/>
-	<xsl:output method="xml"/>
-	
-	<xsl:template match="ROOT">
-<document>
-<xsl:comment>
-   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.
- </xsl:comment>
-	<properties>
-		<title>Openmeetings Errors table</title>
-		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Documentation Robot</author>
-	</properties>
-	<body>
-		<section name="Openmeetings Errors table">
-		<table>
-			<tr>
-				<th>Code</th>
-				<th>Type</th>
-				<th>Description</th>
-			</tr>
-			<xsl:apply-templates/>
-		</table>
-		</section>
-	</body>
-</document>
-	</xsl:template>
-	
-	<xsl:template match="row">
-		<xsl:variable name="englishPath"><xsl:value-of select="concat($languagesDir, '/Application.properties.xml')"/></xsl:variable>
-			<tr>
-				<td>-<xsl:value-of select="field[@name='errorvalues_id']"/></td>
-				<td>
-					<xsl:variable name="type" select="concat('error.type.', field[@name='type'])"/>
-					<xsl:value-of select="document($englishPath)/properties/entry[@key=$type]/text()" />
-				</td>
-				<td>
-					<xsl:variable name="descId" select="field[@name='fieldvalues_id']"/>
-					<xsl:value-of select="document($englishPath)/properties/entry[@key=$descId]/text()" />
-				</td>
-			</tr>
-	</xsl:template>
-</xsl:stylesheet>
+<?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.
+ -->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
+	<xsl:param name="languagesDir"/>
+	<xsl:output method="xml"/>
+	
+	<xsl:template match="ROOT">
+<document>
+<xsl:comment>
+   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.
+ </xsl:comment>
+	<properties>
+		<title>Openmeetings Errors table</title>
+		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Documentation Robot</author>
+	</properties>
+	<body>
+		<section name="Openmeetings Errors table">
+		<table>
+			<tr>
+				<th>Code</th>
+				<th>Type</th>
+				<th>Description</th>
+			</tr>
+			<xsl:apply-templates/>
+		</table>
+		</section>
+	</body>
+</document>
+	</xsl:template>
+	
+	<xsl:template match="row">
+		<xsl:variable name="englishPath"><xsl:value-of select="concat($languagesDir, '/Application.properties.xml')"/></xsl:variable>
+			<tr>
+				<td>-<xsl:value-of select="field[@name='errorvalues_id']"/></td>
+				<td>
+					<xsl:variable name="type" select="concat('error.type.', field[@name='type'])"/>
+					<xsl:value-of select="document($englishPath)/properties/entry[@key=$type]/text()" />
+				</td>
+				<td>
+					<xsl:variable name="descId" select="field[@name='fieldvalues_id']"/>
+					<xsl:value-of select="document($englishPath)/properties/entry[@key=$descId]/text()" />
+				</td>
+			</tr>
+	</xsl:template>
+</xsl:stylesheet>

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-server/src/site/xdoc/ApacheDerbyConfig.xml
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/site/xdoc/ApacheDerbyConfig.xml b/openmeetings-server/src/site/xdoc/ApacheDerbyConfig.xml
index d251f47..a3071ba 100644
--- a/openmeetings-server/src/site/xdoc/ApacheDerbyConfig.xml
+++ b/openmeetings-server/src/site/xdoc/ApacheDerbyConfig.xml
@@ -1,57 +1,57 @@
-<?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 xmlns="http://maven.apache.org/XDOC/2.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
-
-	<properties>
-		<title>Apache Derby Configuration</title>
-		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Team</author>
-	</properties>
-
-	<body>
-		<section name="Apache Derby Configuration">
-
-			<p>
-				OpenMeetings default configuration is to use Apache Derby.
-			</p>
-
-			<p>
-				It is recommended for production environments and high
-				availibility to change to an usual relational database like MySQL,
-				Postgres or DB2.
-			</p>
-			<p>
-				For more information about Apache Derby see
-				<a href="http://db.apache.org/derby/">http://db.apache.org/derby/</a>
-			</p>
-
-			<p>
-				There is a sample configuration for Apache Derby that ships with
-				every release in:
-				<br />
-				/webapps/openmeetings/WEB-INF/classes/META-INF/derby_persistence.xml
-			</p>
-
-			<p>
-				If you encounter issues, you can drop the db and then run the web
-				based installer again
-			</p>
-
-		</section>
-
-	</body>
-
-</document>
+<?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 xmlns="http://maven.apache.org/XDOC/2.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
+
+	<properties>
+		<title>Apache Derby Configuration</title>
+		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Team</author>
+	</properties>
+
+	<body>
+		<section name="Apache Derby Configuration">
+
+			<p>
+				OpenMeetings default configuration is to use Apache Derby.
+			</p>
+
+			<p>
+				It is recommended for production environments and high
+				availibility to change to an usual relational database like MySQL,
+				Postgres or DB2.
+			</p>
+			<p>
+				For more information about Apache Derby see
+				<a href="http://db.apache.org/derby/">http://db.apache.org/derby/</a>
+			</p>
+
+			<p>
+				There is a sample configuration for Apache Derby that ships with
+				every release in:
+				<br />
+				/webapps/openmeetings/WEB-INF/classes/META-INF/derby_persistence.xml
+			</p>
+
+			<p>
+				If you encounter issues, you can drop the db and then run the web
+				based installer again
+			</p>
+
+		</section>
+
+	</body>
+
+</document>

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-server/src/site/xdoc/BitrixPlugin.xml
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/site/xdoc/BitrixPlugin.xml b/openmeetings-server/src/site/xdoc/BitrixPlugin.xml
index 00e93b4..f7b7f90 100644
--- a/openmeetings-server/src/site/xdoc/BitrixPlugin.xml
+++ b/openmeetings-server/src/site/xdoc/BitrixPlugin.xml
@@ -1,48 +1,48 @@
-<?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 xmlns="http://maven.apache.org/XDOC/2.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
-	<properties>
-		<title>Bitrix Plugin</title>
-		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Team</author>
-	</properties>
-	<body>
-		<section name="OpenMeetings Plugin for Bitrix">
-			<p>
-				Plugin for Bitrix currently is not open source. 
-				Please contact <a href="commercial-support.html" target="_blank" rel="nofollow">Commercial Support</a> to get it. 
-			</p>			
-		</section>
-		<section name="Features">
-			<p>The plugin contains the following features: </p>
-			<ul>
-				<li>Enter videoconference rooms from Bitrix (http://www.1c-bitrix.ru/): </li>
-			</ul>
-		</section>
-		<section name="Configuration">			
-			<div>
-				<b>OpenMeetings Bitrix Plugin Installation</b><br/>
-				<ol>
-					<li>Build plugin from sources</li>
-					<li>Unpack it into bitrix/modules</li>
-					<li>Install via Admin</li>
-					<li>Add OPenmeetings component to any page.</li>
-				</ol>              
-			</div>
-		</section>
-	</body>
-
-</document>
+<?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 xmlns="http://maven.apache.org/XDOC/2.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
+	<properties>
+		<title>Bitrix Plugin</title>
+		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Team</author>
+	</properties>
+	<body>
+		<section name="OpenMeetings Plugin for Bitrix">
+			<p>
+				Plugin for Bitrix currently is not open source. 
+				Please contact <a href="commercial-support.html" target="_blank" rel="nofollow">Commercial Support</a> to get it. 
+			</p>			
+		</section>
+		<section name="Features">
+			<p>The plugin contains the following features: </p>
+			<ul>
+				<li>Enter videoconference rooms from Bitrix (http://www.1c-bitrix.ru/): </li>
+			</ul>
+		</section>
+		<section name="Configuration">			
+			<div>
+				<b>OpenMeetings Bitrix Plugin Installation</b><br/>
+				<ol>
+					<li>Build plugin from sources</li>
+					<li>Unpack it into bitrix/modules</li>
+					<li>Install via Admin</li>
+					<li>Add OPenmeetings component to any page.</li>
+				</ol>              
+			</div>
+		</section>
+	</body>
+
+</document>

http://git-wip-us.apache.org/repos/asf/openmeetings/blob/1cb3518f/openmeetings-server/src/site/xdoc/BuildInstructions.xml
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/site/xdoc/BuildInstructions.xml b/openmeetings-server/src/site/xdoc/BuildInstructions.xml
index c6af2af..7fbd84f 100644
--- a/openmeetings-server/src/site/xdoc/BuildInstructions.xml
+++ b/openmeetings-server/src/site/xdoc/BuildInstructions.xml
@@ -1,105 +1,105 @@
-<?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 xmlns="http://maven.apache.org/XDOC/2.0"
-  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
-
-	<properties>
-		<title>Build instructions</title>
-		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Team</author>
-	</properties>
-
-	<body>
-		<section name="Nightly Builds">
-			<p>
-				You can find Nightly Builds of the software at:
-				<a href="https://builds.apache.org/view/M-R/view/OpenMeetings/" rel="nofollow" target="_blank">
-					https://builds.apache.org/view/M-R/view/OpenMeetings/
-				</a>
-			</p>
-		</section>
-
-		<section name="How to Build a Distribution">
-			<div>
-				<p>To build a binary release of OpenMeetings you need: </p>
-				<ul>
-					<li>Oracle JDK8</li>
-					<li>Apache Maven (minimum) 3.3.9</li>
-					<li>Git</li>
-				</ul>
-			</div>
-
-			<p>Get the source: </p>
-			<source><![CDATA[git clone https://git-wip-us.apache.org/repos/asf/openmeetings.git]]></source>
-			<p>Run the command: </p>
-			<source><![CDATA[mvn clean install -P allModules]]></source>
-		</section>
-
-		<section name="Run, Develop, Test">
-			<p>
-				To develop Openmeetings you need to import maven project into Eclipse
-				<img src="images/eclipse-import-maven-project.png" alt="Import OM into Eclipse" width="526" height="394" />
-			</p>
-		</section>
-		<section name="Check for updates">
-			<source>mvn versions:display-dependency-updates</source>
-			<source>mvn versions:display-plugin-updates</source>
-			<source>mvn versions:display-property-updates</source>
-		</section>
-		<section name="Check dependencies">
-			<source>mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.0:analyze-only</source>
-		</section>
-		<section name="Tips and Gotchas">
-			<p>To compile only client you can run following command: </p>
-			<source>
-<![CDATA[
-mvn install -P allModules -pl openmeetings-flash               # compiles a complete package into the folder openmeetings-flash/target
-]]>
-			</source>
-			<p>In case you would like to develop Openmeetings you need to run <i>"unpacked"</i> build: </p>
-			<source>
-<![CDATA[
-mvn clean install -P allModules,unpacked,mysql,default-db-cred -DskipTests=true -Dwicket.mode=DEVELOPMENT
-]]>
-			</source>
-			<p>After modifications are made you can run <i>"quick"</i> build: </p>
-			<source>
-<![CDATA[
-mvn install -P allModules,quick,mysql,default-db-cred -pl openmeetings-web -pl openmeetings-server -Dwicket.mode=DEVELOPMENT
-]]>
-			</source>
-			<p>Any number of projects can be specified during build: </p>
-			<source>
-<![CDATA[
-mvn install -P allModules,quick,mysql,default-db-cred -pl openmeetings-util -pl openmeetings-db -pl openmeetings-core -pl openmeetings-install -pl openmeetings-service -pl openmeetings-web -pl openmeetings-server -pl openmeetings-webservice -Dwicket.mode=DEVELOPMENT
-]]>
-			</source>
-			<div>
-				<b>Working behind a proxy:</b>
-				If you are sitting behind a proxy you should add some proxy settings before starting the build process.
-				<br />
-				<source>git config --global http.proxy http://proxyuser:proxypwd@proxy.server.com:8080</source>
-				<ul>
-					<li>change <tt>proxyuser</tt> to your proxy user</li>
-					<li>change <tt>proxypwd</tt> to your proxy password</li>
-					<li>change <tt>proxy.server.com</tt> to the URL of your proxy server</li>
-					<li>change <tt>8080</tt> to the proxy port configured on your proxy server</li>
-				</ul>
-			</div>
-		</section>
-
-	</body>
-
+<?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 xmlns="http://maven.apache.org/XDOC/2.0"
+  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
+
+	<properties>
+		<title>Build instructions</title>
+		<author email="dev@openmeetings.apache.org">Apache OpenMeetings Team</author>
+	</properties>
+
+	<body>
+		<section name="Nightly Builds">
+			<p>
+				You can find Nightly Builds of the software at:
+				<a href="https://builds.apache.org/view/M-R/view/OpenMeetings/" rel="nofollow" target="_blank">
+					https://builds.apache.org/view/M-R/view/OpenMeetings/
+				</a>
+			</p>
+		</section>
+
+		<section name="How to Build a Distribution">
+			<div>
+				<p>To build a binary release of OpenMeetings you need: </p>
+				<ul>
+					<li>Oracle JDK8</li>
+					<li>Apache Maven (minimum) 3.3.9</li>
+					<li>Git</li>
+				</ul>
+			</div>
+
+			<p>Get the source: </p>
+			<source><![CDATA[git clone https://git-wip-us.apache.org/repos/asf/openmeetings.git]]></source>
+			<p>Run the command: </p>
+			<source><![CDATA[mvn clean install -P allModules]]></source>
+		</section>
+
+		<section name="Run, Develop, Test">
+			<p>
+				To develop Openmeetings you need to import maven project into Eclipse
+				<img src="images/eclipse-import-maven-project.png" alt="Import OM into Eclipse" width="526" height="394" />
+			</p>
+		</section>
+		<section name="Check for updates">
+			<source>mvn versions:display-dependency-updates</source>
+			<source>mvn versions:display-plugin-updates</source>
+			<source>mvn versions:display-property-updates</source>
+		</section>
+		<section name="Check dependencies">
+			<source>mvn org.apache.maven.plugins:maven-dependency-plugin:3.0.0:analyze-only</source>
+		</section>
+		<section name="Tips and Gotchas">
+			<p>To compile only client you can run following command: </p>
+			<source>
+<![CDATA[
+mvn install -P allModules -pl openmeetings-flash               # compiles a complete package into the folder openmeetings-flash/target
+]]>
+			</source>
+			<p>In case you would like to develop Openmeetings you need to run <i>"unpacked"</i> build: </p>
+			<source>
+<![CDATA[
+mvn clean install -P allModules,unpacked,mysql,default-db-cred -DskipTests=true -Dwicket.mode=DEVELOPMENT
+]]>
+			</source>
+			<p>After modifications are made you can run <i>"quick"</i> build: </p>
+			<source>
+<![CDATA[
+mvn install -P allModules,quick,mysql,default-db-cred -pl openmeetings-web -pl openmeetings-server -Dwicket.mode=DEVELOPMENT
+]]>
+			</source>
+			<p>Any number of projects can be specified during build: </p>
+			<source>
+<![CDATA[
+mvn install -P allModules,quick,mysql,default-db-cred -pl openmeetings-util -pl openmeetings-db -pl openmeetings-core -pl openmeetings-install -pl openmeetings-service -pl openmeetings-web -pl openmeetings-server -pl openmeetings-webservice -Dwicket.mode=DEVELOPMENT
+]]>
+			</source>
+			<div>
+				<b>Working behind a proxy:</b>
+				If you are sitting behind a proxy you should add some proxy settings before starting the build process.
+				<br />
+				<source>git config --global http.proxy http://proxyuser:proxypwd@proxy.server.com:8080</source>
+				<ul>
+					<li>change <tt>proxyuser</tt> to your proxy user</li>
+					<li>change <tt>proxypwd</tt> to your proxy password</li>
+					<li>change <tt>proxy.server.com</tt> to the URL of your proxy server</li>
+					<li>change <tt>8080</tt> to the proxy port configured on your proxy server</li>
+				</ul>
+			</div>
+		</section>
+
+	</body>
+
 </document>
\ No newline at end of file