diff --git a/src/Orchard.Web/Modules/Orchard.Localization/Views/Admin/Translate.cshtml b/src/Orchard.Web/Modules/Orchard.Localization/Views/Admin/Translate.cshtml
index 937c09eb3..0dc051814 100644
--- a/src/Orchard.Web/Modules/Orchard.Localization/Views/Admin/Translate.cshtml
+++ b/src/Orchard.Web/Modules/Orchard.Localization/Views/Admin/Translate.cshtml
@@ -46,7 +46,7 @@
contentZone.removeClass("content-" + oldClass);
contentZone.addClass("content-" + optionDirectionality);
- $.trigger("localization.ui.directionalitychanged");
+ $(this).trigger("localization.ui.directionalitychanged");
});
})(jQuery);
//]]>
diff --git a/src/Orchard.Web/Modules/Orchard.Localization/Views/CultureSelection.cshtml b/src/Orchard.Web/Modules/Orchard.Localization/Views/CultureSelection.cshtml
index 2fdd1850b..60927a52c 100644
--- a/src/Orchard.Web/Modules/Orchard.Localization/Views/CultureSelection.cshtml
+++ b/src/Orchard.Web/Modules/Orchard.Localization/Views/CultureSelection.cshtml
@@ -8,8 +8,7 @@
@T("Content Localization")
@T("This is the {0} variation of {1}",
- BuildSelectedCultureList("SelectedCulture", Model.MissingCultures, Model.SelectedCulture),
-
+ BuildSelectedCultureList(Html.FieldIdFor(m => m.SelectedCulture), Model.MissingCultures, Model.SelectedCulture),
Html.ItemEditLink(Model.Content))
diff --git a/src/Orchard.Web/Modules/Orchard.Localization/Views/EditorTemplates/Parts/Localization.ContentTranslations.Edit.cshtml b/src/Orchard.Web/Modules/Orchard.Localization/Views/EditorTemplates/Parts/Localization.ContentTranslations.Edit.cshtml
index 49550b3a0..52e5bf809 100644
--- a/src/Orchard.Web/Modules/Orchard.Localization/Views/EditorTemplates/Parts/Localization.ContentTranslations.Edit.cshtml
+++ b/src/Orchard.Web/Modules/Orchard.Localization/Views/EditorTemplates/Parts/Localization.ContentTranslations.Edit.cshtml
@@ -1,4 +1,5 @@
@model Orchard.Localization.ViewModels.EditLocalizationViewModel
+@using System.Globalization
@using System.Linq;
@{
Style.Require("LocalizationAdmin");
@@ -11,32 +12,53 @@
@T("Content Localization")
@T("This is the {0} variation of the content",
- Html.DropDownList("SelectedCulture", new SelectList(siteCultures, Model.SelectedCulture)))
+ BuildSelectedCultureList(Html.FieldIdFor(m => m.SelectedCulture), siteCultures, Model.SelectedCulture))
}
-
- @if (Model.ContentItem.ContentItem.Id > 0 && Model.SelectedCulture != null && Model.ContentLocalizations.Localizations.Count() > 0) {
-
- @T("Content Localization")
-
- @T("This is the {0} variation of {1}.",
- Html.Encode(Model.SelectedCulture),
- Html.ItemEditLink(Model.MasterContentItem ?? Model.ContentItem))
-
- @Html.Hidden("SelectedCulture", Model.SelectedCulture)
-
- if (Model.ContentLocalizations.Localizations.Count() > 0) {
-
- @T("Other translations:")
-
- @Html.UnorderedList(Model.ContentLocalizations.Localizations, (c, i) => Html.ItemEditLink(c.Culture.Culture, c), "localizations")
-
-
- }
- }
@if (Model.SelectedCulture != null && !siteCultures.All(c => c == Model.SelectedCulture || Model.ContentLocalizations.Localizations.Any(l => c == l.Culture.Culture))) {
@Html.ActionLink(T("+ New translation").Text, "Translate", "Admin", new { area = "Orchard.Localization", id = Model.ContentItem.Id }, null)
}
-
\ No newline at end of file
+
+@functions{
+ private string BuildSelectedCultureList(string name, IEnumerable siteCultures, string culture) {
+ TagBuilder selectTag = new TagBuilder("select");
+ selectTag.Attributes["id"] = name;
+ selectTag.Attributes["name"] = name;
+
+ foreach (var siteCulture in siteCultures) {
+ TagBuilder optionTag = new TagBuilder("option");
+ optionTag.Attributes["data-content-dir"] = CultureInfo.GetCultureInfo(siteCulture).TextInfo.IsRightToLeft ? "rtl" : "ltr";
+ optionTag.Attributes["value"] = siteCulture;
+ optionTag.SetInnerText(siteCulture);
+ selectTag.InnerHtml += optionTag.ToString();
+ }
+
+ return selectTag.ToString();
+ }
+}
+@using (Script.Foot()) {
+
+}
\ No newline at end of file