diff --git a/src/main/scala/de/tobias/playpad/server/project/Pad.scala b/src/main/scala/de/tobias/playpad/server/project/Pad.scala
index 6c88a746760ba8056f4afdd7a5e28e28bea64990..abf66a7b4fa96869904ef9f5e7c57b04b88d96bd 100644
--- a/src/main/scala/de/tobias/playpad/server/project/Pad.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/Pad.scala
@@ -9,9 +9,7 @@ class Pad() {
 
 	var id: UUID = UUID.randomUUID()
 	var name: String = _
-
 	var position: Int = _
-	var pageIndex: Int = _
 
 	var paths: List[Path] = List()
 
diff --git a/src/main/scala/de/tobias/playpad/server/project/loader/json/PathLoader.scala b/src/main/scala/de/tobias/playpad/server/project/loader/json/PathLoader.scala
index df1b32e2aaf172c96ef7f5f6ac9f26e7d2a38a0a..520f8e0e44dff700f35c7bd6ee42b7591a35042a 100644
--- a/src/main/scala/de/tobias/playpad/server/project/loader/json/PathLoader.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/loader/json/PathLoader.scala
@@ -22,7 +22,7 @@ class PathLoader {
 			path.path = json.get(PATH_PATH).getAsString
 			path.pad = pad
 
-			pad
+			path
 		}).toList
 		paths
 	}
diff --git a/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala b/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala
index fb33d4c63427491cbdcb63d96d796ec8fa9ec988..19e0c133593cfda3ebe38f1895795e4a6c8626d4 100644
--- a/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/loader/sql/PadLoader.scala
@@ -23,10 +23,9 @@ class PadLoader(val connection: Connection) {
 			pad.id = UUID.fromString(result.getString(PAD_ID))
 			pad.name = result.getString(PAD_NAME)
 			pad.position = result.getInt(PAD_POSITION)
-			pad.pageIndex = result.getInt(PAD_PAGE)
 
 			val pathLoader = new PathLoader(connection)
-			pad.paths = pathLoader.load(pad))
+			pad.paths = pathLoader.load(pad)
 
 			pad.page = page
 			pads = pad :: pads
diff --git a/src/main/scala/de/tobias/playpad/server/project/saver/json/PadSaver.scala b/src/main/scala/de/tobias/playpad/server/project/saver/json/PadSaver.scala
index 39a62dfec2111080739610c810953d1acfc4968a..c7c0a2b2246ee4e30a31835f718ea6a98e671c43 100644
--- a/src/main/scala/de/tobias/playpad/server/project/saver/json/PadSaver.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/saver/json/PadSaver.scala
@@ -14,7 +14,6 @@ class PadSaver {
 		jsonObject.addProperty(PAD_ID, pad.id.toString)
 		jsonObject.addProperty(PAD_NAME, pad.name)
 		jsonObject.addProperty(PAD_POSITION, pad.position)
-		jsonObject.addProperty(PAD_PAGE, pad.pageIndex)
 
 		val pathSaver = new PathSaver()
 		val pathArray = new JsonArray()
diff --git a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala
index 1d998a372fcc242f63215b6ebc56f7756a829d56..47a330ad654b21e20ad1867695a5e9402f329ff5 100644
--- a/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/saver/sql/PadSaver.scala
@@ -13,7 +13,6 @@ class PadSaver(val connection: Connection) {
 	def save(pad: Pad): Unit = {
 		SqlHelper.insertOrUpdate(connection, PAD, pad.id, PAD_NAME, pad.name)
 		SqlHelper.insertOrUpdate(connection, PAD, pad.id, PAD_POSITION, pad.position)
-		SqlHelper.insertOrUpdate(connection, PAD, pad.id, PAD_PAGE, pad.pageIndex)
 		SqlHelper.insertOrUpdate(connection, PAD, pad.id, PAD_PAGE_REF, pad.page.id)
 
 		val pathSaver = new PathSaver(connection)
diff --git a/src/main/scala/de/tobias/playpad/server/project/utils/JsonDef.scala b/src/main/scala/de/tobias/playpad/server/project/utils/JsonDef.scala
index 3d869a121b7de40bb1d40e16bc30fbb090c19737..2c75ffa7c0efe94a83cbabda23c853d84445bf29 100644
--- a/src/main/scala/de/tobias/playpad/server/project/utils/JsonDef.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/utils/JsonDef.scala
@@ -17,7 +17,6 @@ object JsonDef {
 	val PAD_ID = "id"
 	val PAD_NAME = "name"
 	val PAD_POSITION = "position"
-	val PAD_PAGE = "page"
 	val PAD_PATHS = "paths"
 
 	val PATH_ID = "id"
diff --git a/src/main/scala/de/tobias/playpad/server/project/utils/SqlDef.scala b/src/main/scala/de/tobias/playpad/server/project/utils/SqlDef.scala
index 7b550763a1521a918a87bad443a5857d4a815db9..29d701cbade4dd46cf9469d2db1ed3407b725770 100644
--- a/src/main/scala/de/tobias/playpad/server/project/utils/SqlDef.scala
+++ b/src/main/scala/de/tobias/playpad/server/project/utils/SqlDef.scala
@@ -20,7 +20,6 @@ object SqlDef {
 	val PAD_ID = "id"
 	val PAD_NAME = "name"
 	val PAD_POSITION = "position"
-	val PAD_PAGE = "page"
 	val PAD_PAGE_REF = "page_id"
 
 	val PATH = "Path"
diff --git a/src/main/scala/de/tobias/playpad/server/server/project/sync/ProjectSyncHandler.scala b/src/main/scala/de/tobias/playpad/server/server/project/sync/ProjectSyncHandler.scala
index 543e525d9e59675dd746617db1994373217b8f42..f76a22da120c77b7171f64257f43e44e4905891a 100644
--- a/src/main/scala/de/tobias/playpad/server/server/project/sync/ProjectSyncHandler.scala
+++ b/src/main/scala/de/tobias/playpad/server/server/project/sync/ProjectSyncHandler.scala
@@ -6,6 +6,7 @@ import com.google.gson.{JsonObject, JsonParser}
 import com.j256.ormlite.dao.Dao
 import de.tobias.playpad.server.account
 import de.tobias.playpad.server.account.Account
+import de.tobias.playpad.server.server.project.sync.listener.pad.{PadAddListener, PadRemoveListener}
 import de.tobias.playpad.server.server.project.sync.listener.page.{PageAddListener, PageRemoveListener, PageUpdateListener}
 import de.tobias.playpad.server.server.project.sync.listener.project.{ProjectAddListener, ProjectRemoveListener, ProjectUpdateListener}
 import org.eclipse.jetty.websocket.api.Session
@@ -30,7 +31,11 @@ import scala.collection.{Map, mutable}
 
 		"page-add" -> new PageAddListener(),
 		"page-update" -> new PageUpdateListener(),
-		"page-rm" -> new PageRemoveListener()
+		"page-rm" -> new PageRemoveListener(),
+
+		"pad-add" -> new PadAddListener(),
+		//"page-update" -> new PageUpdateListener(),
+		"pad-rm" -> new PadRemoveListener()
 	)
 
 	@OnWebSocketConnect def onConnect(serverSession: Session): Unit = {
diff --git a/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadAddListener.scala b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadAddListener.scala
new file mode 100644
index 0000000000000000000000000000000000000000..c835bb0159318b4b83d7e11dc22893b71d9e7d11
--- /dev/null
+++ b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadAddListener.scala
@@ -0,0 +1,26 @@
+package de.tobias.playpad.server.server.project.sync.listener.pad
+
+import java.sql.Connection
+import java.util.UUID
+
+import com.google.gson.JsonObject
+import de.tobias.playpad.server.account.Session
+import de.tobias.playpad.server.project.utils.SqlDef
+import de.tobias.playpad.server.server.SqlHelper
+import de.tobias.playpad.server.server.project.sync.listener.Listener
+
+/**
+  * Created by tobias on 19.02.17.
+  */
+class PadAddListener extends Listener {
+	override def onChange(json: JsonObject, connection: Connection, session: Session): Unit = {
+		val padId = UUID.fromString(json.get("id").getAsString)
+		val pageId = UUID.fromString(json.get("page").getAsString)
+		val padName = json.get("name").getAsString
+		val padPosition= json.get("position").getAsInt
+
+		SqlHelper.insertOrUpdate(connection, SqlDef.PAD, padId, SqlDef.PAD_PAGE_REF, pageId)
+		SqlHelper.insertOrUpdate(connection, SqlDef.PAD, padId, SqlDef.PAD_NAME, padName)
+		SqlHelper.insertOrUpdate(connection, SqlDef.PAD, padId, SqlDef.PAD_POSITION, padPosition)
+	}
+}
diff --git a/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadRemoveListener.scala b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadRemoveListener.scala
new file mode 100644
index 0000000000000000000000000000000000000000..6f31c8f4d92e21abf856c621a9835779984fae2e
--- /dev/null
+++ b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/pad/PadRemoveListener.scala
@@ -0,0 +1,21 @@
+package de.tobias.playpad.server.server.project.sync.listener.pad
+
+import java.sql.Connection
+import java.util.UUID
+
+import com.google.gson.JsonObject
+import de.tobias.playpad.server.account.Session
+import de.tobias.playpad.server.project.utils.SqlDef
+import de.tobias.playpad.server.server.SqlHelper
+import de.tobias.playpad.server.server.project.sync.listener.Listener
+
+/**
+  * Created by tobias on 19.02.17.
+  */
+class PadRemoveListener extends Listener {
+	override def onChange(json: JsonObject, connection: Connection, session: Session): Unit = {
+		val padId = UUID.fromString(json.get("id").getAsString)
+
+		SqlHelper.delete(connection, SqlDef.PAD, padId)
+	}
+}
diff --git a/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/page/PageRemoveListener.scala b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/page/PageRemoveListener.scala
index 5b6c791ed5ec86ceff79334901b29a2b1eaa3633..c9df6256de37f405c7b58a2afea2ead01857556b 100644
--- a/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/page/PageRemoveListener.scala
+++ b/src/main/scala/de/tobias/playpad/server/server/project/sync/listener/page/PageRemoveListener.scala
@@ -14,8 +14,8 @@ import de.tobias.playpad.server.server.project.sync.listener.Listener
   */
 class PageRemoveListener extends Listener {
 	override def onChange(json: JsonObject, connection: Connection, session: Session): Unit = {
-		val projectId = UUID.fromString(json.get("id").getAsString)
+		val pageId = UUID.fromString(json.get("id").getAsString)
 
-		SqlHelper.delete(connection, SqlDef.PAGE, projectId)
+		SqlHelper.delete(connection, SqlDef.PAGE, pageId)
 	}
 }