From 8c89194cc6f197c302eae00b6bed565b3e5653d4 Mon Sep 17 00:00:00 2001
From: hubaishan <saeed@hubaishan.com>
Date: Thu, 11 Jan 2018 19:05:19 +0300
Subject: [PATCH] [ticket/15492] Fix permission role combobox in RTL

Varius fixes to css and js for correct
displaying permission role combbox in RTL mode

PHPBB3-15492
---
 phpBB/adm/style/admin.css            | 11 +++++++++++
 phpBB/adm/style/permission_mask.html |  2 +-
 phpBB/adm/style/tooltip.js           | 15 +++++++++++----
 phpBB/assets/javascript/core.js      |  2 ++
 4 files changed, 25 insertions(+), 5 deletions(-)

diff --git a/phpBB/adm/style/admin.css b/phpBB/adm/style/admin.css
index eafe11ee89..efdd6f1e22 100644
--- a/phpBB/adm/style/admin.css
+++ b/phpBB/adm/style/admin.css
@@ -2459,6 +2459,9 @@ fieldset.permissions .padding {
 	text-align: left;
 }
 
+.rtl .dropdown li {
+	text-align: right;
+}
 .wrap .dropdown li, .dropdown.wrap li {
 	white-space: normal;
 }
@@ -2473,6 +2476,10 @@ fieldset.permissions .padding {
 	width: 250px;
 }
 
+.rtl .roles-options > .dropdown {
+	right: auto;
+}
+
 .roles-options {
 	-webkit-user-select: none;
 	-moz-user-select: none;
@@ -2491,6 +2498,10 @@ fieldset.permissions .padding {
 	background: url('../images/arrow_down.gif') no-repeat 245px .7em;
 }
 
+.rtl .roles-options > span {
+	background: url('../images/arrow_down.gif') no-repeat 7px .7em;
+}
+
 .roles-options li {
 	list-style: none;
 }
diff --git a/phpBB/adm/style/permission_mask.html b/phpBB/adm/style/permission_mask.html
index 8b3121bfa0..c556664b8c 100644
--- a/phpBB/adm/style/permission_mask.html
+++ b/phpBB/adm/style/permission_mask.html
@@ -41,7 +41,7 @@
 			<dt style="width: 20%"><label for="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}">{L_ROLE}{L_COLON}</label></dt>
 			{% if p_mask.f_mask.role_options %}
 				<dd style="margin-{S_CONTENT_FLOW_BEGIN}{L_COLON} 20%">
-					<div class="dropdown-container dropdown-right dropdown-button-control roles-options" data-alt-text="{LA_ROLE_DESCRIPTION}">
+					<div class="dropdown-container dropdown-{S_CONTENT_FLOW_END} dropdown-button-control roles-options" data-alt-text="{LA_ROLE_DESCRIPTION}">
 						<select id="role{p_mask.S_ROW_COUNT}{p_mask.f_mask.S_ROW_COUNT}" name="role[{p_mask.f_mask.UG_ID}][{p_mask.f_mask.FORUM_ID}]">{p_mask.f_mask.S_ROLE_OPTIONS}</select>
 						<span title="Roles" class="button icon-button tools-icon dropdown-trigger dropdown-select">{L_NO_ROLE_ASSIGNED}</span>
 						<div class="dropdown hidden">
diff --git a/phpBB/adm/style/tooltip.js b/phpBB/adm/style/tooltip.js
index 8781e2b509..7b7abb11e6 100644
--- a/phpBB/adm/style/tooltip.js
+++ b/phpBB/adm/style/tooltip.js
@@ -130,10 +130,17 @@ phpbb.positionTooltip = function ($element) {
 	$element = $element.parent();
 	offset = $element.offset();
 
-	$('#_tooltip_container').css({
-		top: offset.top + 30,
-		left: offset.left - 205
-	});
+	if ($('body').hasClass('rtl')) {
+		$('#_tooltip_container').css({
+			top: offset.top + 30,
+			left: offset.left + 255
+		});
+	} else {
+		$('#_tooltip_container').css({
+			top: offset.top + 30,
+			left: offset.left - 205
+		});
+	}
 };
 
 /**
diff --git a/phpBB/assets/javascript/core.js b/phpBB/assets/javascript/core.js
index 069f9089c2..7f6f3db93b 100644
--- a/phpBB/assets/javascript/core.js
+++ b/phpBB/assets/javascript/core.js
@@ -1331,6 +1331,8 @@ phpbb.toggleDropdown = function() {
 			$this.css({
 				marginLeft: 0,
 				left: 0,
+				marginRight: 0,
+				right: 0,
 				maxWidth: (windowWidth - 4) + 'px'
 			});