public ActionResult Delete(int id, string languageCode)
        {
            //Get Item
            PhraseTranslation phraseLanguage = new PhraseTranslation();

            phraseLanguage = phraseLanguageRepository.GetItem(id, languageCode);

            //Check Exists
            if (phraseLanguage == null)
            {
                ViewData["ActionMethod"] = "DeleteGet";
                return(View("RecordDoesNotExistError"));
            }

            //AccessRights
            RolesRepository rolesRepository = new RolesRepository();

            if (!rolesRepository.HasWriteAccessToReferenceInfo())
            {
                ViewData["Message"] = "You do not have access to this item";
                return(View("Error"));
            }

            //Parent data
            ViewData["PhraseId"]   = id;
            ViewData["PhraseName"] = phraseLanguage.Phrase.PhraseName;

            phraseLanguageRepository.EditItemForDisplay(phraseLanguage);
            return(View(phraseLanguage));
        }
Beispiel #2
0
    /**
     * Save the missing+current translations in a json file
     **/
    void OnDestroy()
    {
        if (!gotMissingTranslations)
        {
            return;
        }

        PhraseTranslation[] phrasesList = new PhraseTranslation[translation.Count];
        int i = 0;

        foreach (KeyValuePair <string, string> phrase in translation)
        {
            phrasesList[i] = new PhraseTranslation(phrase.Key, phrase.Value);
            i++;
        }

        translationFile.translations = phrasesList;
        string json = JsonUtility.ToJson(translationFile, true);

        // remove Translations attr from the json
        string newLine = "\n"; // to not set to Environment.NewLine as JsonUtility.ToJson always sets \n

        json = json.Remove(json.LastIndexOf(newLine));
        json = "[\n" + deleteLines(json, 2);

        setupFolders();
        System.IO.File.WriteAllText(translationPath + playerLanguage.ToString() + ".json", json);
    }
        //Delete From DB
        public void Delete(PhraseTranslation phraseTranslation)
        {
            string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0];

            db.spDesktopDataAdmin_DeletePhraseTranslation_v1(
                phraseTranslation.PhraseId,
                phraseTranslation.LanguageCode,
                adminUserGuid,
                phraseTranslation.VersionNumber
                );
        }
        //Add to DB
        public void Add(PhraseTranslation phraseTranslation)
        {
            string adminUserGuid = HttpContext.Current.User.Identity.Name.Split(new[] { '|' })[0];

            db.spDesktopDataAdmin_InsertPhraseTranslation_v1(
                phraseTranslation.PhraseId,
                phraseTranslation.LanguageCode,
                phraseTranslation.PhraseTranslation1,
                adminUserGuid
                );
        }
Beispiel #5
0
    public static string get(string key)
    {
#if UNITY_EDITOR
        if (translation.Count == 0)
        {
            reloadTranslations();
        }
#else
        if (translation.Count == 0)
        {
            if (!isLoadingTranslations)
            {
                reloadTranslations();
            }
            else
            {
                reloadRequested = true;
            }
        }
#endif
        if (translation.ContainsKey(key))
        {
            return(translation[key]);
        }

        if (fallbackTranslation.ContainsKey(key))
        {
            return(fallbackTranslation[key]);
        }

#if UNITY_EDITOR
        gotMissingTranslations = true;
        PhraseTranslation phrase = new PhraseTranslation(key, key);
        translation.Add(phrase.key, phrase.translation);
        Debug.Log("NOT TRANSLATED:\n" + JsonUtility.ToJson(phrase, true) + ",\n");

        if (recordScreenshots)
        {
            if (hasScreenshot(key))
            {
                Debug.Log("Screenshot already taken");
            }
            else
            {
                Instance.StartCoroutine(takeScreenshot(key));
            }
        }
#endif
        return(key);
    }
 //Add Data From Linked Tables for Display
 public void EditItemForDisplay(PhraseTranslation phraseTranslation)
 {
     //Add LanguageName
     if (phraseTranslation.LanguageCode != null)
     {
         LanguageRepository languageRepository = new LanguageRepository();
         Language           language           = new Language();
         language = languageRepository.GetLanguage(phraseTranslation.LanguageCode);
         if (language != null)
         {
             phraseTranslation.LanguageName = language.LanguageName;
         }
     }
 }
        public ActionResult Delete(int id, string languageCode, FormCollection collection)
        {
            //Get Item
            PhraseTranslation phraseLanguage = new PhraseTranslation();

            phraseLanguage = phraseLanguageRepository.GetItem(id, languageCode);

            //Check Exists
            if (phraseLanguage == null)
            {
                ViewData["ActionMethod"] = "EditPost";
                return(View("RecordDoesNotExistError"));
            }

            //AccessRights
            RolesRepository rolesRepository = new RolesRepository();

            if (!rolesRepository.HasWriteAccessToReferenceInfo())
            {
                ViewData["Message"] = "You do not have access to this item";
                return(View("Error"));
            }

            //Delete Item
            try
            {
                phraseLanguage.VersionNumber = Int32.Parse(collection["VersionNumber"]);
                phraseLanguageRepository.Delete(phraseLanguage);
            }
            catch (SqlException ex)
            {
                //Versioning Error - go to standard versionError page
                if (ex.Message == "SQLVersioningError")
                {
                    ViewData["ReturnURL"] = "/PhraseTranslation.mvc/Delete?id=" + phraseLanguage.PhraseId.ToString() + "&languageCode=" + phraseLanguage.LanguageCode;
                    return(View("VersionError"));
                }
                //Generic Error
                ViewData["Message"] = "There was a problem with your request, please see the log file or contact an administrator for details";
                return(View("Error"));
            }


            //Return
            return(RedirectToAction("List", new { id = phraseLanguage.PhraseId }));
        }
        public ActionResult Create(PhraseTranslation phraseLanguage)
        {
            Phrase phrase = new Phrase();

            phrase = phraseRepository.GetPhrase(phraseLanguage.PhraseId);

            //Check Exists
            if (phrase == null)
            {
                ViewData["ActionMethod"] = "CreatePost";
                return(View("RecordDoesNotExistError"));
            }

            RolesRepository rolesRepository = new RolesRepository();

            if (!rolesRepository.HasWriteAccessToReferenceInfo())
            {
                ViewData["Message"] = "You do not have access to this item";
                return(View("Error"));
            }

            //Update  Model from Form
            try
            {
                UpdateModel(phraseLanguage);
            }
            catch
            {
                string n = "";
                foreach (ModelState modelState in ViewData.ModelState.Values)
                {
                    foreach (ModelError error in modelState.Errors)
                    {
                        n += error.ErrorMessage;
                    }
                }
                ViewData["Message"] = "ValidationError : " + n;
                return(View("Error"));
            }


            phraseLanguageRepository.Add(phraseLanguage);

            return(RedirectToAction("List", new { id = phraseLanguage.PhraseId }));
        }
        // GET: /Create
        public ActionResult Create(int id)
        {
            //Get Phrase
            Phrase phrase = new Phrase();

            phrase = phraseRepository.GetPhrase(id);

            //Check Exists
            if (phrase == null)
            {
                ViewData["ActionMethod"] = "CreateGet";
                return(View("RecordDoesNotExistError"));
            }

            //AccessRights
            RolesRepository rolesRepository = new RolesRepository();

            if (!rolesRepository.HasWriteAccessToReferenceInfo())
            {
                ViewData["Message"] = "You do not have access to this item";
                return(View("Error"));
            }

            //Parent data
            ViewData["PhraseId"]   = id;
            ViewData["PhraseName"] = phrase.PhraseName;

            //New PhraseTranslation
            PhraseTranslation phraseLanguage = new PhraseTranslation();

            phraseLanguage.PhraseId = id;
            phraseLanguageRepository.EditItemForDisplay(phraseLanguage);

            //Language SelectList
            SelectList languageList = new SelectList(phraseLanguageRepository.GetUnUsedLanguages(id).ToList(), "LanguageCode", "LanguageName");

            ViewData["Languages"] = languageList;

            //Show Create Form
            return(View(phraseLanguage));
        }
        // GET: /Delete
        public ActionResult ViewItem(int id, string languageCode)
        {
            //Get Item
            PhraseTranslation phraseLanguage = new PhraseTranslation();

            phraseLanguage = phraseLanguageRepository.GetItem(id, languageCode);

            //Check Exists
            if (phraseLanguage == null)
            {
                ViewData["ActionMethod"] = "DeleteGet";
                return(View("RecordDoesNotExistError"));
            }


            //Parent data
            ViewData["PhraseId"]   = id;
            ViewData["PhraseName"] = phraseLanguage.Phrase.PhraseName;


            phraseLanguageRepository.EditItemForDisplay(phraseLanguage);
            return(View(phraseLanguage));
        }
        public ActionResult Edit(int id, string languageCode, FormCollection formCollection)
        {
            //Get Item
            PhraseTranslation phraseLanguage = new PhraseTranslation();

            phraseLanguage = phraseLanguageRepository.GetItem(id, languageCode);

            //Check Exists
            if (phraseLanguage == null)
            {
                ViewData["ActionMethod"] = "EditPost";
                return(View("RecordDoesNotExistError"));
            }

            //AccessRights
            RolesRepository rolesRepository = new RolesRepository();

            if (!rolesRepository.HasWriteAccessToReferenceInfo())
            {
                ViewData["Message"] = "You do not have access to this item";
                return(View("Error"));
            }

            //Update Item from Form
            try
            {
                UpdateModel(phraseLanguage);
            }
            catch
            {
                string n = "";
                foreach (ModelState modelState in ViewData.ModelState.Values)
                {
                    foreach (ModelError error in modelState.Errors)
                    {
                        n += error.ErrorMessage;
                    }
                }
                ViewData["Message"] = "ValidationError : " + n;
                return(View("Error"));
            }



            //Update AirlineAdvice
            try
            {
                phraseLanguageRepository.Update(phraseLanguage);
            }
            catch (SqlException ex)
            {
                //Versioning Error
                if (ex.Message == "SQLVersioningError")
                {
                    ViewData["ReturnURL"] = "/PhraseTranslation.mvc/Edit?id=" + phraseLanguage.PhraseId.ToString() + "&languageCode=" + phraseLanguage.LanguageCode;
                    return(View("VersionError"));
                }

                //Generic Error
                ViewData["Message"] = "There was a problem with your request, please see the log file or contact an administrator for details";
                return(View("Error"));
            }

            return(RedirectToAction("List", new { id = phraseLanguage.PhraseId }));
        }