﻿@model string[]

@using CatalogManagement.ViewModel;

@{
    List<string> currencies = TMEViewModel.GetCurrenciesForCountry(Model[0]);  
    
    string bindValue = 
        (string.IsNullOrEmpty(Model[1]) ? TMEViewModel.GetDefaultCurrencyForCountry(Model[0]) : Model[1]); 
}

@Html.DevExpress().CallbackPanel(
    settings => {
        settings.Name = "cpCurrency";
        settings.CallbackRouteValues = new { Controller = "Home", Action = "TMECurrencies" };
        settings.ClientSideEvents.BeginCallback = "function(s, e) { e.customArgs['Country'] = Country.GetValue(); }";
        settings.SetContent(() => Html.DevExpress().ComboBox(
            cbSettings =>
            {
                cbSettings.Name = "Currency";
                cbSettings.ControlStyle.CssClass = "editor";
                cbSettings.Properties.ValueType = typeof(string);
                cbSettings.Properties.EnableClientSideAPI = true;
                cbSettings.ShowModelErrors = true;
                cbSettings.Properties.ValidationSettings.ErrorDisplayMode = ErrorDisplayMode.Text;
                cbSettings.Properties.ValidationSettings.RequiredField.ErrorText = "This field is required";
                cbSettings.Properties.ValidationSettings.ErrorTextPosition = ErrorTextPosition.Bottom;
                cbSettings.Width = System.Web.UI.WebControls.Unit.Percentage(100);
            }
            ).BindList(currencies).Bind(bindValue).Render());
    }
).GetHtml()