diff --git a/core/ajax/translations.php b/core/ajax/translations.php
deleted file mode 100644
index c296cea572a3dbaa964ca4a2453294748aaf3808..0000000000000000000000000000000000000000
--- a/core/ajax/translations.php
+++ /dev/null
@@ -1,30 +0,0 @@
-<?php
-
-/**
-* ownCloud - ajax frontend
-*
-* @author Jakob Sack
-* @copyright 2011 Jakob Sack kde@jakobsack.de
-*
-* This library is free software; you can redistribute it and/or
-* modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE
-* License as published by the Free Software Foundation; either
-* version 3 of the License, or any later version.
-*
-* This library is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-* GNU AFFERO GENERAL PUBLIC LICENSE for more details.
-*
-* You should have received a copy of the GNU Affero General Public
-* License along with this library.  If not, see <http://www.gnu.org/licenses/>.
-*
-*/
-
-$app = isset($_POST["app"]) ? $_POST["app"] : "";
-
-$app = OC_App::cleanAppId($app);
-
-$l = \OC::$server->getL10N($app);
-
-OC_JSON::success(array('data' => $l->getTranslations(), 'plural_form' => $l->getPluralFormString()));
diff --git a/core/routes.php b/core/routes.php
index a9d5387bc148a3a9c8705215da1bf158cc9e6891..92545d0322ee5fa39ba2c72047b4e967c1a6320e 100644
--- a/core/routes.php
+++ b/core/routes.php
@@ -30,9 +30,6 @@ $this->create('core_ajax_appconfig', '/core/ajax/appconfig.php')
 // Share
 $this->create('core_ajax_share', '/core/ajax/share.php')
 	->actionInclude('core/ajax/share.php');
-// Translations
-$this->create('core_ajax_translations', '/core/ajax/translations.php')
-	->actionInclude('core/ajax/translations.php');
 // Tags
 $this->create('core_tags_tags', '/tags/{type}')
 	->get()
diff --git a/lib/private/l10n.php b/lib/private/l10n.php
index 0b20eafea32c8622305078937cb5f7cc7cae21b0..ee144cd221c024d50def28715a985035d684474b 100644
--- a/lib/private/l10n.php
+++ b/lib/private/l10n.php
@@ -265,17 +265,6 @@ class OC_L10N implements \OCP\IL10N {
 		return $this->translations;
 	}
 
-	/**
-	 * getPluralFormString
-	 * @return string containing the gettext "Plural-Forms"-string
-	 *
-	 * Returns a string like "nplurals=2; plural=(n != 1);"
-	 */
-	public function getPluralFormString() {
-		$this->init();
-		return $this->plural_form_string;
-	}
-
 	/**
 	 * getPluralFormFunction
 	 * @return string the plural form function
diff --git a/lib/private/template/jsresourcelocator.php b/lib/private/template/jsresourcelocator.php
index f8fe3817ce60a4d40151d5516ae505d1f27f67a5..507f31327a6ca844fcd9607104d24866b4bb8ece 100644
--- a/lib/private/template/jsresourcelocator.php
+++ b/lib/private/template/jsresourcelocator.php
@@ -35,6 +35,10 @@ class JSResourceLocator extends ResourceLocator {
 		) {
 			return;
 		}
+		// missing translations files fill be ignored
+		if (strpos($script, "l10n/") === 0) {
+			return;
+		}
 		throw new \Exception('js file not found: script:'.$script);
 	}
 
diff --git a/lib/private/util.php b/lib/private/util.php
index 5105bb2293117c825644b3da2b75a00a2cb509de..9b8a7a5bc40a38aac1d6d4530ccb7357c87bf6ae 100644
--- a/lib/private/util.php
+++ b/lib/private/util.php
@@ -363,7 +363,7 @@ class OC_Util {
 		if (!empty($application)) {
 			self::$scripts[] = "$application/l10n/$languageCode";
 		} else {
-			self::$scripts[] = "js/$languageCode";
+			self::$scripts[] = "l10n/$languageCode";
 		}
 	}