diff --git a/settings/admin.php b/settings/admin.php
index 01cab1fa1f4a2ce954b82e482654e6132da8e000..bb20c665f560cbc3e193fab4f099d0812df51606 100644
--- a/settings/admin.php
+++ b/settings/admin.php
@@ -81,6 +81,8 @@ $template->assign('onlyShareWithGroupMembers', \OC\Share\Share::shareWithGroupMe
 $databaseOverload = (strpos(\OCP\Config::getSystemValue('dbtype'), 'sqlite') !== false);
 $template->assign('databaseOverload', $databaseOverload);
 
+// warn if Windows is used
+$template->assign('WindowsWarning', OC_Util::runningOnWindows());
 
 // add hardcoded forms from the template
 $forms = OC_App::getForms('admin');
diff --git a/settings/templates/admin.php b/settings/templates/admin.php
index 41b60b644280ab00e835712b5f50e7d1a31b999b..65c6359e509dafa35aa4b1fa996025bee1da9b07 100644
--- a/settings/templates/admin.php
+++ b/settings/templates/admin.php
@@ -10,13 +10,10 @@
  */
 
 style('settings', 'settings');
-script('settings', 'settings');
-script( "settings", "admin" );
-script( "settings", "log" );
-script( 'core', 'multiselect' );
+script('settings', [ 'settings', 'admin', 'log'] );
+script('core', ['multiselect', 'setupchecks']);
 vendor_script('select2/select2');
 vendor_style('select2/select2');
-script('core', 'setupchecks');
 
 $levels = array('Debug', 'Info', 'Warning', 'Error', 'Fatal');
 $levelLabels = array(
@@ -125,6 +122,20 @@ if ($_['databaseOverload']) {
 <?php
 }
 
+// Windows Warning
+if ($_['WindowsWarning']) {
+	?>
+<div class="section">
+	<h2><?php p($l->t('Microsoft Windows Platform'));?></h2>
+
+	<p class="securitywarning">
+		<?php p($l->t('Your server is running on Microsoft Windows. We highly recommend Linux for optimal user experience.')); ?>
+	</p>
+
+</div>
+<?php
+}
+
 // if module fileinfo available?
 if (!$_['has_fileinfo']) {
 	?>