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("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("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("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