public void SaveItem() { if (nameField == "") { messageGO.GetComponent <Text>().text = "Name can't be empty"; return; } else if (valueField == 0) { messageGO.GetComponent <Text>().text = "Value can't be zero"; return; } //TODO check if valid value, name can be default if (String.IsNullOrEmpty(lvlOne.curListItem.name) && lvlOne.curListItem.value == 0) { //new item to be saved if (listMngr.CheckForDuplicateName(nameField) == -1) { listMngr.SaveItemInList(nameField, valueField, monthsField, yearsField, excludeFromAverage, false); nav.GoBack(); } else { nav.OpenMergePanel(); } } else { //existing item modified to be saved. if (listMngr.CheckForDuplicateName(nameField) == -1 || nameField == lvlOne.curListItem.name) { //REMARK: better to handle zero value in both fields if (monthsField == 0 && yearsField == 0) { perm = true; } if (perm) { lvlOne.UpdateSavedEntry(nameField, valueField, -1, -1, excludeFromAverage); } else { lvlOne.UpdateSavedEntry(nameField, valueField, monthsField, yearsField, excludeFromAverage); } nav.GoBack(); } else { nav.editing = true; nav.OpenMergePanel(); } } lvlOne.SaveData(); }