internal static RoutineResult SetNotificationTemplate(int userId, string settingsName, string fromEmail, string ccEmail, string subject,
            string htmlBody, string textBody)
        {
            //
            RoutineResult result = new RoutineResult();
            //
            SecurityResult sec_result = CheckAccountNotDemoAndActive();
            //
            if (!sec_result.Success)
            {
                result.Succeed = false;
                result.ResultCode = sec_result.ResultCode;
                //
                return result;
            }

            // 1. Check notification subject correctness
            //
            try
            {
                Template tm = new Template(subject);
                tm.CheckSyntax();
            }
            catch (ParserException parserEx)
            {
                result.Succeed = false;
                //
                result.ResultCode = EcommerceErrorCodes.ERROR_NTFY_SUBJECT_TEMPLATE;
                //
                result.Message = "Line: " + parserEx.Line + "; Column: " + parserEx.Column + ";";
                //
                return result;
            }

            // 2. Check notification HTML body correctness
            try
            {
                Template tm = new Template(htmlBody);
                tm.CheckSyntax();
            }
            catch (ParserException parserEx)
            {
                result.Succeed = false;
                //
                result.ResultCode = EcommerceErrorCodes.ERROR_NTFY_HTML_TEMPLATE;
                //
                result.Message = "Line: " + parserEx.Line + "; Column: " + parserEx.Column + ";";
                //
                return result;
            }

            // 3. Check notification Plain Text body correctness
            try
            {
                Template tm = new Template(textBody);
                tm.CheckSyntax();
            }
            catch (ParserException parserEx)
            {
                result.Succeed = false;
                //
                result.ResultCode = EcommerceErrorCodes.ERROR_NTFY_TEXT_TEMPLATE;
                //
                result.Message = "Line: " + parserEx.Line + "; Column: " + parserEx.Column + ";";
                //
                return result;
            }

            //
            StoreSettings settings = new StoreSettings();
            //
            settings["From"] = fromEmail;
            //
            settings["CC"] = ccEmail;
            //
            settings["Subject"] = subject;
            //
            settings["HtmlBody"] = htmlBody;
            //
            settings["TextBody"] = textBody;

            //
            result.ResultCode = SetStoreSettings(userId, settingsName, settings);
            //
            if (result.ResultCode < 0)
                result.Succeed = false;
            else
                result.Succeed = true;
            //
            return result;
        }