예제 #1
0
        private void cmbPMGroupList_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (this.SelectionChanged != null)
            {
                SelectionChanged(sender, e);
            }
            var control = sender as ComboBox;

            if (sender != null)
            {
                if (control.SelectedValue != null)
                {
                    var pmGroup = control.SelectedItem as ProductManagerGroupInfo;
                    if (pmGroup != null)
                    {
                        SelectedPMGroupName = pmGroup.PMGroupName;
                    }
                }
                else
                {
                    SelectedPMGroupName = null;
                }
            }
            else
            {
                SelectedPMGroupName = null;
            }
        }
예제 #2
0
        /// <summary>
        /// 将输入字符串,转化为JSON
        /// </summary>
        /// <param name="key"></param>
        /// <returns></returns>
        public static string GetString(string key)
        {
            string json = "";
            List <LanguageContent> list = new List <LanguageContent>();

            LanguageContent con = new LanguageContent();

            foreach (Lebi_Language_Code lang in Languages())
            {
                con   = new LanguageContent();
                con.L = lang.Code;
                con.C = key;
                list.Add(con);
            }
            json = ToJson(list);
            return(json);
        }
예제 #3
0
        public static string RequestSafeString(string key, List <Lebi_Language_Code> langs)
        {
            string json = "";
            List <LanguageContent> list = new List <LanguageContent>();

            LanguageContent con = new LanguageContent();

            foreach (Lebi_Language_Code lang in langs)
            {
                con   = new LanguageContent();
                con.L = lang.Code;
                con.C = RequestTool.RequestSafeString(key + lang.Code, "");
                list.Add(con);
            }
            json = ToJson(list);
            return(json);
        }
예제 #4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="key"></param>
        /// <param name="oldstr"></param>
        /// <param name="lang"></param>
        /// <returns></returns>
        public static string GetString(string key, string oldstr, string langcode)
        {
            string json = "";
            JavaScriptSerializer jss = new JavaScriptSerializer();
            bool flag = false;

            List <LanguageContent> newlist = new List <LanguageContent>();

            try
            {
                List <LanguageContent> list = jss.Deserialize <List <LanguageContent> >(oldstr);
                if (list != null)
                {
                    foreach (LanguageContent lang in list)
                    {
                        if (lang.L == langcode)
                        {
                            flag   = true;
                            lang.C = key;
                        }
                        newlist.Add(lang);
                    }
                }
            }
            catch
            {
                flag = false;
            }
            if (!flag)
            {
                LanguageContent con = new LanguageContent();
                con.L = langcode;
                con.C = key;
                newlist.Add(con);
            }
            json = ToJson(newlist);
            return(json);
        }
        public static PageLanguageHelper GetLanguageContent(string SiteName, string ViewName)
        {
            PageLanguageHelper returnValue = null;
            if (SessionManager.Exists(SiteName + ViewName))
                SessionManager.Get<PageLanguageHelper>(SiteName + ViewName, out returnValue);
            else
            {
                LanguageContent param = new LanguageContent();
                param.SiteName = SiteName;
                param.ViewFeatureName = ViewName;

                var currentLanguage = SessionManager.GetCurrentLanguage();

                if (currentLanguage != null)
                    param.idLanguageType = currentLanguage.idLanguageType;
                else param.idLanguageType = LanguageTypeBL.GetLanguageTypeByLanguageName(LanguageTypeBL.LanguageTypes.French).idLanguageType;

                returnValue = new PageLanguageHelper(LanguageManager.GetPageLanguageContent(param));

                SessionManager.Add<PageLanguageHelper>(returnValue, SiteName + ViewName);
            }

            return returnValue;
        }
예제 #6
0
        /// <summary>
        /// 返回指定语言内容
        /// </summary>
        /// <param name="con"></param>
        /// <param name="lang"></param>
        /// <returns></returns>
        public static string Content(string con, string lang)
        {
            JavaScriptSerializer jss = new JavaScriptSerializer();

            //string szJson = @"[{""L"":""CN"",""C"":""全局""},{""L"":""EN"",""C"":""全局EN""}]";
            try
            {
                List <LanguageContent> langs = jss.Deserialize <List <LanguageContent> >(con);
                if (langs == null)
                {
                    return("");
                }
                //foreach (LanguageContent m in langs)
                //{
                //    if (m.L == lang)
                //        return m.C;
                //}
                LanguageContent model = (from m in langs
                                         where m.L == lang
                                         select m).ToList().FirstOrDefault();
                string res = "";
                if (model == null)
                {
                    res = ""; // langs.FirstOrDefault().C;
                }
                else
                {
                    res = model.C;
                }
                return(res);
            }
            catch (Exception)
            {
                return("");
            }
        }
예제 #7
0
        private void _btnPopulate_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("This action will populate the LanguageContent for the selected language type using the excel file data" + Environment.NewLine + Environment.NewLine + "Do you wish to proceed?", "Confirm Action", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
            {
                    try
                    {
                        int insertCount = 0;
                        int updateCount = 0;
                        var databaseList = _context.LanguageContent.ToList();

                        //get similar namekeys from database and excel data
                        var dataToUpdate = from content2 in _excelDataList
                                          join content in databaseList on new { content2.NameKey, content2.SiteName, content2.ViewFeatureName, ((LanguageType)_cmbLanguageType.SelectedItem).idLanguageType } equals new { content.NameKey, content.SiteName, content.ViewFeatureName, content.idLanguageType }
                                          select new { idLanguageContent = content.idLanguageContent, LanguageContent = content, ExcelId= content2.idLanguageContent, LanguageContentStringUS = content2.LanguageContentStringEN };

                        var something = from content in _excelDataList
                                           join content2 in dataToUpdate on content.idLanguageContent equals content2.ExcelId
                                           select content;

                        var data = from content in _excelDataList
                                   select content;

                        var dataToInsert = data.Except(something);

                        foreach (var item in dataToInsert)
                        {
                            LanguageContent newLanguageContent = new LanguageContent()
                            {
                                DateCreated = DateTime.Now,
                                idLanguageType = ((LanguageType)_cmbLanguageType.SelectedItem).idLanguageType,
                                SiteName = item.SiteName,
                                ViewFeatureName = item.ViewFeatureName,
                                NameKey = item.NameKey,
                                LanguageContentString = item.LanguageContentStringEN
                            };

                            //insert to context
                            _context.LanguageContent.AddObject(newLanguageContent);
                            insertCount++;
                        }

                        foreach (var item in dataToUpdate)
                        {
                            //single context == auto update.
                            item.LanguageContent.LanguageContentString = item.LanguageContentStringUS;
                            updateCount++;
                        }

                        //save changes
                        _context.SaveChanges();

                        MessageBox.Show("Data population complete." + Environment.NewLine + Environment.NewLine + "Records created: " + insertCount.ToString() + Environment.NewLine + Environment.NewLine + "Records updated: " + updateCount.ToString(), "Success", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show("Data population has encountered an unexpected error. Please try again." + Environment.NewLine + Environment.NewLine + "If error persists, please contact the admin." + Environment.NewLine + Environment.NewLine + "Error details: " + ex.Message, "Data population failed", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
            }
        }
예제 #8
0
        private static void WriteControl <TModel>(HtmlHelper helper, TModel obj, ComponentMode componentMode, int width, int height, bool showDrp, string name, string DrpName = "LanguageId", bool showemptyvalue = false) where TModel : class
        {
            var             stringWriter     = new StringWriter();
            var             html32TextWriter = new Html32TextWriter(stringWriter);
            LanguageContent content          = null;

            content = LanguageContent(obj, name, showemptyvalue);
            if (!showDrp)
            {
                html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Id.ToString(), DrpName);
                html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Name.ToString(), DrpName);
                html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Type.ToString(), "hidden");
                html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Value.ToString(), SessionParameters.Culture);
                html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Input.ToString());
                html32TextWriter.RenderEndTag();
            }
            else
            {
                var culture = content != null ? content.LanguageId : SessionParameters.Culture;
                GenerateDrp(html32TextWriter, culture,
                            "$.get('/Common/LanguageContent/ChangeCulture',{key:document.getElementById('LHK-" + name +
                            "').value,langid:document.getElementById('LanguageId').value,date: new Date().getTime()},function(data){if(data!=null){document.getElementById('" +
                            name + "').value=data;}});", DrpName);
            }


            html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Id.ToString(), "LHK-" + name);
            html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Name.ToString(), "LHK-" + name);
            html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Type.ToString(), "hidden");
            html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Input.ToString());
            html32TextWriter.RenderEndTag();



            var str = "";

            if (content != null)
            {
                str = content.Value;
                html32TextWriter.Write("<script>document.getElementById('LHK-" + name + "').value='" + content.Key + "'</script>");
            }
            else
            {
                var val = obj.GetType().GetProperty(name).GetValue(obj, null);
                if (val != null)
                {
                    str = val.ToString();
                }
            }
            html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Value.ToString(), str);
            html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Name.ToString(), name);
            html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Id.ToString(), name);
            switch (componentMode)
            {
            case ComponentMode.TextBox:

                html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Style.ToString(), "width:" + width + "px;");
                html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Type.ToString(), "text");
                html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Input.ToString());
                html32TextWriter.RenderEndTag();
                break;

            case ComponentMode.TextArea:
                var style = "";
                if (width > 0)
                {
                    style += "width:" + width + "px;";
                }
                if (height > 0 && componentMode != ComponentMode.TextBox)
                {
                    style += "height:" + height + "px;";
                }
                html32TextWriter.AddAttribute(HtmlTextWriterAttribute.Style.ToString(), style);
                html32TextWriter.RenderBeginTag(HtmlTextWriterTag.Textarea.ToString());
                html32TextWriter.Write(str);
                html32TextWriter.RenderEndTag();
                break;
            }
            var resourceScript = helper.ViewContext.GenerateResourceScript();

            helper.ViewContext.Writer.Write(resourceScript + stringWriter);
        }