38 lines
1.5 KiB
Plaintext
38 lines
1.5 KiB
Plaintext
@model LanguageSelectorModel
|
|
|
|
@inject Nop.Core.IWebHelper webHelper
|
|
|
|
@if (Model.AvailableLanguages.Count > 1)
|
|
{
|
|
<div class="language-selector">
|
|
@{
|
|
var returnUrl = webHelper.GetRawUrl(Context.Request);
|
|
|
|
if (Model.UseImages)
|
|
{
|
|
<ul class="language-list">
|
|
@foreach (var lang in Model.AvailableLanguages)
|
|
{
|
|
<li>
|
|
<a href="@Url.RouteUrl("ChangeLanguage", new { langid = lang.Id, returnUrl }, webHelper.GetCurrentRequestProtocol())" title="@lang.Name">
|
|
<img title='@lang.Name' alt='@lang.Name' @(lang.Id == Model.CurrentLanguageId ? " class=selected" : null)
|
|
src="@Url.Content("~/images/flags/" + @lang.FlagImageFileName) "/>
|
|
</a>
|
|
</li>
|
|
}
|
|
</ul>
|
|
}
|
|
else
|
|
{
|
|
var languages = await Model.AvailableLanguages.SelectAwait(async lang => new SelectListItem
|
|
{
|
|
Text = lang.Name,
|
|
Value = Url.RouteUrl("ChangeLanguage", new { langid = lang.Id, returnUrl }, webHelper.GetCurrentRequestProtocol()),
|
|
Selected = lang.Id.Equals(Model.CurrentLanguageId)
|
|
}).ToListAsync();
|
|
|
|
<select id="customerlanguage" name="customerlanguage" asp-items="@languages" onchange="setLocation(this.value);" aria-label="@T("Languages.Selector.Label")"></select>
|
|
}
|
|
}
|
|
</div>
|
|
} |