using CloudBuilder.Core.DependencyInjection.Policy;
using CloudBuilder.Core.DependencyInjection.Request;
using CloudBuilder.Core.Policy;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CloudBuilder.Security.Policy
{
    public class SecurityMessagePolicy : LocalePolicy, IPolicy
    {
        public static string REFRESH = "refresh";
        public static string LOCKED = "locked";
        public static string EXPIRED = "expired";
        public static string GUI_REPORT_PRINT = "gui_report_print";
        public static string GUI_WS_RECORD_EXISTED = "gui_ws_record_existed";
        public static string GUI_WS_RECORD_NOT_FOUND = "gui_ws_record_not_found";
        public static string GUI_WS_RECORD_NOT_FOUND_ID = "gui_ws_record_not_found_id";
        public static string GUI_CONFIRM = "gui_confirm";
        public static string GUI_CONFIRM_APPROVAL_NULL = "gui_confirm_approval_null";
        public static string GUI_CONFIRM_CANCEL = "gui_confirm_cancel";
        public static string GUI_CONFIRM_CANCEL_APPROVAL_NULL = "gui_confirm_cancel_approval_null";
        public static string GUI_CONFIRM_DEL = "gui_confirm_del";
        public static string GUI_CONFIRM_DEL_NULL = "gui_confirm_del_null";
        public static string GUI_CONFIRM_DEL_NUM = "gui_confirm_del_num";
        public static string GUI_CONFIRM_DEL_SHORT = "gui_confirm_del_short";
        public static string GUI_CONFIRM_OPEN = "gui_confirm_open";
        public static string GUI_CONFIRM_REVERT_NULL = "gui_confirm_revert_null";
        public static string GUI_DELETE = "gui_delete";
        public static string GUI_OPEN = "gui_open";
        public static string GUI_SUCCEED_APPROVE_NULL = "gui_succeed_approve_null";
        public static string GUI_SUCCEED_CANCEL_REVERT_NULL = "gui_succeed_cancel_revert_null";
        public static string GUI_SUCCEED_CANCEL_SUBMIT_NULL = "gui_succeed_cancel_submit_null";
        public static string GUI_SUCCEED_CREATED = "gui_succeed_created";
        public static string GUI_SUCCEED_CREATED_NULL = "gui_succeed_created_null";
        public static string GUI_SUCCEED_CREATED_SHORT = "gui_succeed_created_short";
        public static string GUI_SUCCEED_DELETED = "gui_succeed_deleted";
        public static string GUI_SUCCEED_DELETED_NULL = "gui_succeed_deleted_null";
        public static string GUI_SUCCEED_DELETED_SHORT = "gui_succeed_deleted_short";
        public static string GUI_SUCCEED_RECEIVE_NULL = "gui_succeed_receive_null";
        public static string GUI_SUCCEED_REVERT_NULL = "gui_succeed_revert_null";
        public static string GUI_SUCCEED_SAVED_NULL = "gui_succeed_saved_null";
        public static string GUI_SUCCEED_SEND_MAIL_NULL = "gui_succeed_send_mail_null";
        public static string GUI_SUCCEED_SUBMIT_NULL = "gui_succeed_submit_null";
        public static string GUI_SUCCEED_UPDATED = "gui_succeed_updated";
        public static string GUI_SUCCEED_UPDATED_NULL = "gui_succeed_updated_null";
        public static string GUI_SUCCEED_UPDATED_RECORD = "gui_succeed_updated_record";
        public static string GUI_SUCCEED_UPDATED_SHORT = "gui_succeed_updated_short";
        public static string GUI_TITLE_CONFIRMATION = "gui_title_confirmation";
        public static string GUI_VALID_INPUT = "gui_valid_input";
        public static string GUI_VALID_SELECT = "gui_valid_select";
        public static string GUI_VALID_SELECT_RECORD = "gui_valid_select_record";
        public static string WEB_EXCEPTION_MESSAGE = "web_exception_message";

        private readonly IContext context;
        private readonly ILocaleMessageManager localeMessageManager;

        public SecurityMessagePolicy(IContext context, ILocaleMessageManager localeMessageManager) : base(context, localeMessageManager)
        {
            this.context = context;
            this.localeMessageManager = localeMessageManager;

            this.Name = typeof(SecurityMessagePolicy).Name;
        }

    }
}

/*
INSERT INTO [dbo].[locale]([created_datetime],[created_by],[updated_datetime],[updated_by],[group_name],[lang],[name],[value],[order_by])     VALUES
(GETDATE(),'patch',GETDATE(),'patch','SecurityMessagePolicy','zh-cn','gui_valid_select',N'请选择一个有效的{0}。',0),
(GETDATE(),'patch',GETDATE(),'patch','SecurityMessagePolicy','en','gui_valid_select',N'Please select a valid {0}',0)
*/
