Пример #1
0
        public bool UpdateLanguageDetails(LanguageDetails details)
        {
            List <SqlParameter> sp = new List <SqlParameter>()
            {
                new SqlParameter()
                {
                    ParameterName = "@name", Value = details.Name, SqlDbType = SqlDbType.VarChar
                },
                new SqlParameter()
                {
                    ParameterName = "@language_id", Value = details.Language_Id, SqlDbType = SqlDbType.BigInt
                },
                new SqlParameter()
                {
                    ParameterName = "@imagePath", Value = details.ImagePath, SqlDbType = SqlDbType.VarChar
                },
                new SqlParameter()
                {
                    ParameterName = "@abbrv", Value = details.Abbreviation, SqlDbType = SqlDbType.VarChar
                },
            };

            object[] parameters = sp.ToArray();
            var      users      = _languageRepository.ExecuteStoredProcedureList <AuthUser>(PROC_UPDATE_LANGUAGE_DETAILS, parameters);

            if (users != null)
            {
                return(true);
            }
            else
            {
                return(false);
            }
        }
Пример #2
0
        private void SetProjectLanguages(ProjectDetails selectedProject)
        {
            // if an project has only one language select that language
            if (selectedProject?.ProjectLanguages != null && selectedProject.ProjectLanguages.Count.Equals(1))
            {
                var languageName         = selectedProject.ProjectLanguages.FirstOrDefault().Key;
                var languageToBeSelected = _languages.FirstOrDefault(n => n.LanguageName.Equals(languageName));
                if (languageToBeSelected != null)
                {
                    languageToBeSelected.IsChecked = true;
                }
                else
                {
                    var newLanguage = new LanguageDetails
                    {
                        LanguageName = languageName,
                        IsChecked    = true
                    };
                    _languages.Add(newLanguage);
                }
                selectedProject.ProjectLanguages[languageName] = true;
            }

            var languagesAlreadySelectedForExport = _languages.Where(l => l.IsChecked).ToList();

            foreach (var language in languagesAlreadySelectedForExport)
            {
                if (selectedProject?.ProjectLanguages != null && selectedProject.ProjectLanguages.ContainsKey(language.LanguageName))
                {
                    selectedProject.ProjectLanguages[language.LanguageName] = true;
                }
            }

            AddNewLanguages(selectedProject);
        }
Пример #3
0
        // Set the languages for the selected project within the languages UI list
        private void AddNewLanguages(ProjectDetails selectedProject)
        {
            try
            {
                var selectedProjectToExport = _projectsDataSource?.FirstOrDefault(e => e.ShouldBeExported && e.ProjectName.Equals(selectedProject.ProjectName));

                if (selectedProjectToExport?.ProjectLanguages != null)
                {
                    foreach (var language in selectedProjectToExport.ProjectLanguages.ToList())
                    {
                        var languageDetails = _languages?.FirstOrDefault(n => n.LanguageName.Equals(language.Key));
                        if (languageDetails == null)
                        {
                            var newLanguage = new LanguageDetails {
                                LanguageName = language.Key, IsChecked = true
                            };
                            _languages?.Add(newLanguage);
                        }
                    }
                }

                languagesListBox.DataSource    = _languages;
                languagesListBox.DisplayMember = "LanguageName";
                languagesListBox.ValueMember   = "IsChecked";
            }
            catch (Exception ex)
            {
                Log.Logger.Error($"AddNewLanguages method: {ex.Message}\n {ex.StackTrace}");
            }
        }
Пример #4
0
        public LanguageList GetLanguageList()
        {
            // = new LanguageDetails();
            LanguageList objlst = new LanguageList();
            DataSet      ds     = objServices.GetLanguageList();

            if (ds != null && ds.Tables.Count > 0)
            {
                int tblIndx = -1;
                tblIndx++;
                if (ds.Tables.Count > tblIndx && ds.Tables[tblIndx] != null && ds.Tables[tblIndx].Rows.Count > 0)
                {
                    List <LanguageDetails> LanguageList = new List <LanguageDetails>();
                    foreach (DataRow dr in ds.Tables[tblIndx].Rows)
                    {
                        LanguageDetails obj = new LanguageDetails();
                        obj.LanguageId = Convert.ToInt64(dr["LanguageId"]);
                        obj.Language   = Convert.ToString(dr["Language"]);
                        obj.Status     = Convert.ToInt16(dr["IsActive"]);
                        LanguageList.Add(obj);
                    }
                    objlst.languagelist = LanguageList;
                }
                tblIndx++;
                if (ds.Tables.Count > tblIndx && ds.Tables[tblIndx] != null && ds.Tables[tblIndx].Rows.Count > 0)
                {
                    objlst.TotalCount = Convert.ToInt64(ds.Tables[tblIndx].Rows[0]["TotalCount"]);
                }
            }
            return(objlst);
        }
Пример #5
0
        public IHttpActionResult InsertLanguageDetails(RequestModel model)
        {
            ReturnMsg obj = new ReturnMsg();

            try
            {
                if (string.IsNullOrEmpty(model.Id) || (string.IsNullOrEmpty(model.ScheduleId)))
                {
                    return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Both Name and Abbreviation are required.")));
                }

                LanguageDetails details = new LanguageDetails();
                details.Abbreviation = model.ScheduleId;
                details.Name         = model.Id;
                details.ImagePath    = string.Empty;
                _langService.InsertLanguageDetails(details);
                obj.IsSuccess = true;
                obj.Message   = "Language inserted successfully.";
            }
            catch (Exception e)
            {
                return(ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)));
            }
            return(Ok(obj));
        }
Пример #6
0
        /// <summary>
        /// Populate the languages.
        /// </summary>
        public void ShowLanguages()
        {
            int i = 0;

            while (i < 2)
            {
                LanguageModel language = new LanguageModel();

                if (i == 0)
                {
                    language.Id      = 1;
                    language.Name    = "English";
                    language.Culture = "en-US";
                }
                else
                {
                    language.Id      = 2;
                    language.Name    = "French";
                    language.Culture = "fr-FR";
                }
                LanguageDetails.Add(language);
                i++;
            }
            Languages = LanguageDetails;
        }
Пример #7
0
 private void AddLanguageFromDictionary(BindingList <LanguageDetails> languages, Dictionary <string, bool> languagesDictionary)
 {
     foreach (var item in languagesDictionary)
     {
         var language = new LanguageDetails {
             LanguageName = item.Key, IsChecked = item.Value
         };
         languages.Add(language);
     }
 }
Пример #8
0
 public bool AddLanguage(Int64 Id, LanguageDetails obj)
 {
     using (SqlCommand sqlCommand = new SqlCommand())
     {
         sqlCommand.CommandType = CommandType.StoredProcedure;
         sqlCommand.CommandText = Procedures.AddLanguage;
         sqlCommand.Parameters.AddWithValue("@UserId", Id);
         sqlCommand.Parameters.AddWithValue("@LanguageId", obj.LanguageId);
         sqlCommand.Parameters.AddWithValue("@Language", obj.Language);
         sqlCommand.Parameters.AddWithValue("@IsActive", obj.Status);
         return(Convert.ToBoolean(DAL.ExecuteNonQuery(ConfigurationHelper.connectionString, sqlCommand)));
     }
 }
Пример #9
0
        public void Should_have_validation_error_when_url_is_empty()
        {
            var command = new LanguageDetails
            {
                SiteId      = Guid.NewGuid(),
                Id          = Guid.NewGuid(),
                Name        = "Name",
                CultureName = "aa-bb",
                Url         = string.Empty
            };

            var languageRulesMock = new Mock <ILanguageRules>();
            var siteRulesMock     = new Mock <ISiteRules>();
            var validator         = new LanguageDetailsValidator <LanguageDetails>(languageRulesMock.Object, siteRulesMock.Object);

            validator.ShouldHaveValidationErrorFor(x => x.Url, command);
        }
Пример #10
0
        public void Should_have_validation_error_when_language_name_is_too_short()
        {
            var command = new LanguageDetails
            {
                SiteId      = Guid.NewGuid(),
                Id          = Guid.NewGuid(),
                Name        = "A",
                CultureName = "aa-bb",
                Url         = "url"
            };

            var languageRulesMock = new Mock <ILanguageRules>();
            var siteRulesMock     = new Mock <ISiteRules>();
            var validator         = new LanguageDetailsValidator <LanguageDetails>(languageRulesMock.Object, siteRulesMock.Object);

            validator.ShouldHaveValidationErrorFor(x => x.Name, command);
        }
Пример #11
0
        public LanguageDetails LanguageDetails(Int64 Id)
        {
            LanguageDetails obj = new LanguageDetails();
            DataSet         ds  = objServices.GetLanguageDetails(Id);

            if (ds != null && ds.Tables.Count > 0)
            {
                int tblIndx = -1;
                tblIndx++;
                if (ds.Tables.Count > tblIndx && ds.Tables[tblIndx] != null && ds.Tables[tblIndx].Rows.Count > 0)
                {
                    obj.LanguageId = Convert.ToInt64(ds.Tables[tblIndx].Rows[0]["LanguageId"]);
                    obj.Language   = Convert.ToString(ds.Tables[tblIndx].Rows[0]["Language"]);
                    obj.Status     = Convert.ToInt16(ds.Tables[tblIndx].Rows[0]["IsActive"]);
                }
            }
            return(obj);
        }
Пример #12
0
        public void Should_have_validation_error_when_url_is_not_unique()
        {
            var command = new LanguageDetails
            {
                SiteId      = Guid.NewGuid(),
                Id          = Guid.NewGuid(),
                Name        = "My Language",
                CultureName = "aa-bb",
                Url         = "url"
            };

            var languageRulesMock = new Mock <ILanguageRules>();

            languageRulesMock.Setup(x => x.IsLanguageUrlUnique(command.SiteId, command.CultureName, Guid.Empty)).Returns(false);

            var siteRulesMock = new Mock <ISiteRules>();
            var validator     = new LanguageDetailsValidator <LanguageDetails>(languageRulesMock.Object, siteRulesMock.Object);

            validator.ShouldHaveValidationErrorFor(x => x.Url, command);
        }
Пример #13
0
        public void Should_have_validation_error_when_culture_name_is_not_valid()
        {
            var command = new LanguageDetails
            {
                SiteId      = Guid.NewGuid(),
                Id          = Guid.NewGuid(),
                Name        = "My Language",
                CultureName = "a@b",
                Url         = "url"
            };

            var languageRulesMock = new Mock <ILanguageRules>();

            languageRulesMock.Setup(x => x.IsCultureNameValid(command.CultureName)).Returns(false);

            var siteRulesMock = new Mock <ISiteRules>();
            var validator     = new LanguageDetailsValidator <LanguageDetails>(languageRulesMock.Object, siteRulesMock.Object);

            validator.ShouldHaveValidationErrorFor(x => x.CultureName, command);
        }
Пример #14
0
        public void Should_have_validation_error_when_site_does_not_exist()
        {
            var command = new LanguageDetails
            {
                SiteId      = Guid.NewGuid(),
                Id          = Guid.NewGuid(),
                Name        = "My Language",
                CultureName = "aa-bb",
                Url         = "url"
            };

            var languageRulesMock = new Mock <ILanguageRules>();

            var siteRulesMock = new Mock <ISiteRules>();

            siteRulesMock.Setup(x => x.DoesSiteExist(command.SiteId)).Returns(false);

            var validator = new LanguageDetailsValidator <LanguageDetails>(languageRulesMock.Object, siteRulesMock.Object);

            validator.ShouldHaveValidationErrorFor(x => x.SiteId, command);
        }
Пример #15
0
        private void FillLanguagesList()
        {
            try
            {
                var selectedProjectsToExport = _projectsDataSource.Where(e => e.ShouldBeExported).ToList();

                foreach (var selectedProject in selectedProjectsToExport)
                {
                    foreach (var language in selectedProject.LanguagesForPoject.ToList())
                    {
                        var languageDetails = _languages.FirstOrDefault(n => n.LanguageName.Equals(language.Key));
                        if (languageDetails == null)
                        {
                            var newLanguage = new LanguageDetails
                            {
                                LanguageName = language.Key,
                                IsChecked    = false
                            };
                            _languages.Add(newLanguage);
                        }
                    }
                }
                if (!_languages.Any(l => l.LanguageName.Equals("All languages")))
                {
                    _languages.Insert(0, new LanguageDetails
                    {
                        LanguageName = "All languages",
                        IsChecked    = false
                    });
                }
                languagesListBox.DataSource    = _languages;
                languagesListBox.DisplayMember = "LanguageName";
                languagesListBox.ValueMember   = "IsChecked";
            }
            catch (Exception ex)
            {
                Log.Logger.Error($"FillLanguagesList method: {ex.Message}\n {ex.StackTrace}");
            }
        }
Пример #16
0
        private void FillLanguagesList()
        {
            var selectedProjectsToExport = _projectsDataSource.Where(e => e.ShouldBeExported).ToList();

            foreach (var selectedProject in selectedProjectsToExport)
            {
                foreach (var language in selectedProject.LanguagesForPoject.ToList())
                {
                    var languageDetails = _languages.FirstOrDefault(n => n.LanguageName.Equals(language.Key));
                    if (languageDetails == null)
                    {
                        var newLanguage = new LanguageDetails
                        {
                            LanguageName = language.Key,
                            IsChecked    = false
                        };
                        _languages.Add(newLanguage);
                    }
                }
            }
            languagesListBox.DataSource    = _languages;
            languagesListBox.DisplayMember = "LanguageName";
            languagesListBox.ValueMember   = "IsChecked";
        }
Пример #17
0
        public void Should_have_validation_error_when_url_is_too_long()
        {
            var url = "";

            for (int i = 0; i < 101; i++)
            {
                url += i;
            }

            var command = new LanguageDetails
            {
                SiteId      = Guid.NewGuid(),
                Id          = Guid.NewGuid(),
                Name        = "My Language",
                CultureName = "aa-bb",
                Url         = url
            };

            var languageRulesMock = new Mock <ILanguageRules>();
            var siteRulesMock     = new Mock <ISiteRules>();
            var validator         = new LanguageDetailsValidator <LanguageDetails>(languageRulesMock.Object, siteRulesMock.Object);

            validator.ShouldHaveValidationErrorFor(x => x.Url, command);
        }
Пример #18
0
        private void PrepareProjectToExport(ProjectDetails selectedProject)
        {
            try
            {
                if (selectedProject != null)
                {
                    var doc = new XmlDocument();
                    var selectedProjectIndex = _projectsDataSource.IndexOf(selectedProject);

                    if (selectedProjectIndex > -1)
                    {
                        //Read sdlproj
                        doc.Load(selectedProject.ProjectPath);
                        Help.LoadReports(doc, selectedProject.ProjectFolderPath, selectedProject);

                        selectedProject.ShouldBeExported = true;
                        //if an project has only one language select that language
                        if (selectedProject.LanguagesForPoject != null)
                        {
                            if (selectedProject.LanguagesForPoject.Count.Equals(1))
                            {
                                var languageName         = selectedProject.LanguagesForPoject.First().Key;
                                var languageToBeSelected = _languages.FirstOrDefault(n => n.LanguageName.Equals(languageName));
                                if (languageToBeSelected != null)
                                {
                                    languageToBeSelected.IsChecked = true;
                                }
                                else
                                {
                                    var newLanguage = new LanguageDetails
                                    {
                                        LanguageName = languageName,
                                        IsChecked    = true
                                    };
                                    _languages.Add(newLanguage);
                                }
                                selectedProject.LanguagesForPoject[languageName] = true;
                            }
                        }

                        var languagesAlreadySelectedForExport = _languages.Where(l => l.IsChecked).ToList();

                        foreach (var language in languagesAlreadySelectedForExport)
                        {
                            if (selectedProject.LanguagesForPoject != null && selectedProject.LanguagesForPoject.ContainsKey(language.LanguageName))
                            {
                                selectedProject.LanguagesForPoject[language.LanguageName] = true;
                            }
                        }
                        //show languages in language list box
                        FillLanguagesList();

                        reportOutputPath.Text = selectedProject.ReportPath ?? Empty;

                        copyBtn.Enabled = projListbox.SelectedItems.Count == 1;
                        if (projListbox.SelectedItems.Count > 0)
                        {
                            csvBtn.Enabled = true;
                        }
                        RefreshLanguageListbox();
                    }
                }
            }
            catch (Exception ex)
            {
                Log.Logger.Error($"PrepareProjectToExport method: {ex.Message}\n {ex.StackTrace}");
            }
        }
Пример #19
0
 private bool HaveUniqueLanguageUrl(LanguageDetails cmd, string url)
 {
     return(_languageRules.IsLanguageUrlUnique(cmd.SiteId, url, cmd.Id));
 }
Пример #20
0
 private bool HaveUniqueCultureName(LanguageDetails cmd, string cultureName)
 {
     return(_languageRules.IsCultureNameUnique(cmd.SiteId, cultureName, cmd.Id));
 }
Пример #21
0
 private bool HaveUniqueName(LanguageDetails cmd, string name)
 {
     return(_languageRules.IsLanguageNameUnique(cmd.SiteId, name, cmd.Id));
 }
Пример #22
0
 public bool AddLanguage(Int64 Id, LanguageDetails obj)
 {
     return(objServices.AddLanguage(Id, obj));
 }
Пример #23
0
        public IHttpActionResult AddLanguage(Int64 Id, LanguageDetails obj)
        {
            LanguageBusinessServices objLBS = new LanguageBusinessServices();

            return(Ok(objLBS.AddLanguage(Id, obj)));
        }