Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
48 changes: 38 additions & 10 deletions lib/app/modules/home/views/add_task_bottom_sheet_new.dart
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,11 @@ class AddTaskBottomSheet extends StatelessWidget {
onPressed: () {
Get.back();
},
child: const Text("Cancel"),
child: Text(SentenceManager(
currentLanguage:
homeController.selectedLanguage.value)
.sentences
.cancel),
),
Text(
SentenceManager(
Expand All @@ -66,7 +70,11 @@ class AddTaskBottomSheet extends StatelessWidget {
onSaveButtonClicked(context);
}
},
child: const Text("Save"),
child: Text(SentenceManager(
currentLanguage:
homeController.selectedLanguage.value)
.sentences
.save),
),
],
),
Expand All @@ -80,10 +88,18 @@ class AddTaskBottomSheet extends StatelessWidget {
child: TextFormField(
controller: homeController.namecontroller,
validator: (value) => value!.isEmpty
? "Description cannot be empty"
? SentenceManager(
currentLanguage:
homeController.selectedLanguage.value)
.sentences
.descriprtionCannotBeEmpty
: null,
decoration: const InputDecoration(
labelText: 'Enter Task Description',
decoration: InputDecoration(
labelText: SentenceManager(
currentLanguage:
homeController.selectedLanguage.value)
.sentences
.enterTaskDescription,
border: OutlineInputBorder(),
),
),
Expand Down Expand Up @@ -168,15 +184,21 @@ class AddTaskBottomSheet extends StatelessWidget {
(context, textEditingController, focusNode, onFieldSubmitted) =>
TextFormField(
controller: textEditingController,
decoration: const InputDecoration(
labelText: 'Project',
decoration: InputDecoration(
labelText: SentenceManager(
currentLanguage: homeController.selectedLanguage.value)
.sentences
.enterProject,
border: OutlineInputBorder(),
),
onChanged: (value) => homeController.projectcontroller.text = value,
focusNode: focusNode,
validator: (value) {
if (value != null && value.contains(" ")) {
return "Can not have Whitespace";
return SentenceManager(
currentLanguage: homeController.selectedLanguage.value)
.sentences
.canNotHaveWhiteSpace;
}
return null;
},
Expand Down Expand Up @@ -208,7 +230,10 @@ class AddTaskBottomSheet extends StatelessWidget {
.priority.value), // Display the selected priority
),
decoration: InputDecoration(
labelText: 'Priority',
labelText: SentenceManager(
currentLanguage: homeController.selectedLanguage.value)
.sentences
.priority,
border: const OutlineInputBorder(),
suffixIcon: Padding(
padding: const EdgeInsets.only(right: 8.0),
Expand Down Expand Up @@ -304,7 +329,10 @@ class AddTaskBottomSheet extends StatelessWidget {
homeController.projectcontroller.text = '';
ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: Text(
'Task Added Successfully!',
SentenceManager(
currentLanguage: homeController.selectedLanguage.value)
.sentences
.addTaskTaskAddedSuccessfully,
style: TextStyle(
color: AppSettings.isDarkMode
? TaskWarriorColors.kprimaryTextColor
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:taskwarrior/app/utils/app_settings/app_settings.dart';
import 'package:taskwarrior/app/utils/constants/constants.dart';
import 'package:taskwarrior/app/utils/language/sentence_manager.dart';
import 'package:taskwarrior/app/utils/themes/theme_extension.dart';
import 'package:url_launcher/url_launcher.dart';
import '../controllers/manage_task_champion_creds_controller.dart';
Expand All @@ -24,7 +26,9 @@ class ManageTaskChampionCredsView
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"Configure TaskChampion",
SentenceManager(currentLanguage: AppSettings.selectedLanguage)
.sentences
.configureTaskchampion,
style: GoogleFonts.poppins(
color: TaskWarriorColors.white,
fontSize: TaskWarriorFonts.fontSizeLarge,
Expand Down Expand Up @@ -65,7 +69,10 @@ class ManageTaskChampionCredsView
style: TextStyle(color: tColors.primaryTextColor),
controller: controller.encryptionSecretController,
decoration: InputDecoration(
labelText: 'Encryption Secret',
labelText: SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.sentences
.encryptionSecret,
labelStyle: TextStyle(color: tColors.primaryTextColor),
border: const OutlineInputBorder(),
),
Expand All @@ -75,7 +82,10 @@ class ManageTaskChampionCredsView
style: TextStyle(color: tColors.primaryTextColor),
controller: controller.clientIdController,
decoration: InputDecoration(
labelText: 'Client ID',
labelText: SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.sentences
.ccsyncClientId,
labelStyle: TextStyle(color: tColors.primaryTextColor),
border: const OutlineInputBorder(),
),
Expand All @@ -85,7 +95,10 @@ class ManageTaskChampionCredsView
style: TextStyle(color: tColors.primaryTextColor),
controller: controller.ccsyncBackendUrlController,
decoration: InputDecoration(
labelText: 'CCSync Backend URL',
labelText: SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.sentences
.ccsyncBackendUrl,
labelStyle: TextStyle(color: tColors.primaryTextColor),
border: const OutlineInputBorder(),
),
Expand All @@ -95,8 +108,14 @@ class ManageTaskChampionCredsView
onPressed: () async {
await controller.saveCredentials();
Get.snackbar(
'Success',
'Credentials saved successfully',
SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.sentences
.success,
SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.sentences
.credentialsSavedSuccessfully,
snackPosition: SnackPosition.BOTTOM,
duration: Duration(seconds: 2),
);
Expand All @@ -105,7 +124,10 @@ class ManageTaskChampionCredsView
),
const SizedBox(height: 10),
Text(
'Tip: Click on the info icon in the top right corner to get your credentials',
SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.sentences
.tip,
style: TextStyle(
fontSize: 15,
color: tColors.primaryTextColor,
Expand Down
18 changes: 11 additions & 7 deletions lib/app/utils/add_task_dialogue/date_picker_input.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import 'package:flutter/material.dart';
import 'package:taskwarrior/app/utils/app_settings/app_settings.dart';
import 'package:taskwarrior/app/utils/language/sentence_manager.dart';
import 'package:taskwarrior/app/utils/taskfunctions/add_task_dialog_utils.dart';
import 'package:taskwarrior/app/utils/themes/theme_extension.dart';

Expand Down Expand Up @@ -51,12 +53,12 @@ class _AddTaskDatePickerInputState extends State<AddTaskDatePickerInput> {
bool isNextDateSelected = _selectedDates[getNextIndex()] != null;
bool isPreviousDateSelected = _selectedDates[getPreviousIndex()] != null;
String nextDateText = isNextDateSelected
? "Change ${dateLabels[getNextIndex()]} Date"
: "Add ${dateLabels[getNextIndex()]} Date";
? "${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.change} ${dateLabels[getNextIndex()]} ${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.date}"
: "${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.add} ${dateLabels[getNextIndex()]} ${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.date}";

String prevDateText = isPreviousDateSelected
? "Change ${dateLabels[getPreviousIndex()]} Date"
: "Add ${dateLabels[getPreviousIndex()]} Date";
? "${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.change} ${dateLabels[getPreviousIndex()]} ${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.date}"
: "${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.add} ${dateLabels[getPreviousIndex()]} ${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.date}";
return Column(
mainAxisSize: MainAxisSize.min,
children: [
Expand Down Expand Up @@ -127,8 +129,10 @@ class _AddTaskDatePickerInputState extends State<AddTaskDatePickerInput> {
return TextFormField(
controller: _controllers[forIndex],
decoration: InputDecoration(
labelText: '${dateLabels[forIndex]} Date',
hintText: 'Select a ${dateLabels[forIndex]}',
labelText:
'${dateLabels[forIndex]} ${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.date}',
hintText:
'${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.select} ${dateLabels[forIndex]}',
suffixIcon: const Icon(Icons.calendar_today),
border: const OutlineInputBorder(),
),
Expand Down Expand Up @@ -165,7 +169,7 @@ class _AddTaskDatePickerInputState extends State<AddTaskDatePickerInput> {
DateTime? dt = _selectedDates[i];
String? label = dateLabels[i];
if (dt != null && dt.isBefore(DateTime.now())) {
return "$label date cannot be in the past";
return "$label ${SentenceManager(currentLanguage: AppSettings.selectedLanguage).sentences.dateCanNotBeInPast}";
}
}
return null;
Expand Down
25 changes: 22 additions & 3 deletions lib/app/utils/add_task_dialogue/tags_input.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
import 'package:flutter/material.dart';
import 'package:taskwarrior/app/utils/app_settings/app_settings.dart';
import 'package:taskwarrior/app/utils/language/sentence_manager.dart';
import 'package:textfield_tags/textfield_tags.dart';

class AddTaskTagsInput extends StatefulWidget {
Expand Down Expand Up @@ -80,10 +82,22 @@ class _AddTaskTagsInputState extends State<AddTaskTagsInput> {
if (tags.contains(tag)) {
stringTagController.onTagRemoved(tag);
stringTagController.onTagSubmitted(tag);
return "Tag already exists";
return SentenceManager(
currentLanguage: SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.currentLanguage)
.sentences
.tagAlreadyExists;
}
for (String tag in tags) {
if (tag.contains(" ")) return "Tag should not contain spaces";
if (tag.contains(" ")) {
return SentenceManager(
currentLanguage: SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.currentLanguage)
.sentences
.tagShouldNotContainSpaces;
}
}
return null;
},
Expand All @@ -92,7 +106,12 @@ class _AddTaskTagsInputState extends State<AddTaskTagsInput> {
controller: inputFieldValues.textEditingController,
focusNode: inputFieldValues.focusNode,
decoration: InputDecoration(
labelText: "Enter tags",
labelText: SentenceManager(
currentLanguage: SentenceManager(
currentLanguage: AppSettings.selectedLanguage)
.currentLanguage)
.sentences
.addTaskAddTags,
border: const OutlineInputBorder(),
prefixIconConstraints: BoxConstraints(
maxWidth:
Expand Down
45 changes: 45 additions & 0 deletions lib/app/utils/language/bengali_sentences.dart
Original file line number Diff line number Diff line change
Expand Up @@ -606,4 +606,49 @@ class BengaliSentences extends Sentences {

@override
String get tourTaskServerTaskRC => "আপনার TaskRC ফাইল সেট করুন";
@override
String get descriprtionCannotBeEmpty => "বর্ণনা খালি হতে পারে না";
@override
String get enterTaskDescription => "টাস্কের বর্ণনা লিখুন";
@override
String get canNotHaveWhiteSpace => "সাদা স্থান থাকতে পারে না";
@override
String get high => "উচ্চ";
@override
String get medium => "মধ্যম";
@override
String get low => "নিম্ন";
@override
String get priority => "অগ্রাধিকার";
@override
String get tagAlreadyExists => "ট্যাগ ইতিমধ্যে বিদ্যমান";
@override
String get tagShouldNotContainSpaces => "ট্যাগে স্পেস থাকা উচিত নয়";
@override
String get date => "তারিখ";
@override
String get add => "যোগ করুন";
@override
String get change => "পরিবর্তন করুন";
@override
String get dateCanNotBeInPast => "তারিখ অতীতে থাকতে পারে না";
@override
String get configureTaskchampion => 'Taskchampion সিঙ্ক কনফিগার করুন';
@override
String get encryptionSecret => 'এনক্রিপশন সিক্রেট';
@override
String get ccsyncBackendUrl => 'CCSync ব্যাকএন্ড URL';
@override
String get ccsyncClientId => 'ক্লায়েন্ট আইডি';
@override
String get success => 'সফল হয়েছে';
@override
String get credentialsSavedSuccessfully => 'শংসাপত্র সফলভাবে সংরক্ষিত হয়েছে';
@override
String get tip =>
"টিপ: আপনার শংসাপত্র পেতে উপরের ডানদিকে তথ্য আইকনে ক্লিক করুন";
@override
String get logs => 'লগস';
@override
String get checkAllDebugLogsHere => 'এখানে সমস্ত ডিবাগ লগ পরীক্ষা করুন';
}
46 changes: 46 additions & 0 deletions lib/app/utils/language/english_sentences.dart
Original file line number Diff line number Diff line change
Expand Up @@ -594,4 +594,50 @@ class EnglishSentences extends Sentences {
@override
String get tourDetailsPriority =>
"This is the priority of the Tasks \n L -> Low \n M -> Medium \n H -> Hard";
// Dialogue for adding new task
@override
String get descriprtionCannotBeEmpty => "Description cannot be empty";
@override
String get enterTaskDescription => "Enter Task Description";
@override
String get canNotHaveWhiteSpace => "Can not have white space";
@override
String get high => "High";
@override
String get medium => "Medium";
@override
String get low => "Low";
@override
String get priority => "Priority";
@override
String get tagAlreadyExists => "Tag already exists";
@override
String get tagShouldNotContainSpaces => "Tag should not contain spaces";
@override
String get date => "Date";
@override
String get add => "Add";
@override
String get change => "Change";
@override
String get dateCanNotBeInPast => "Date can not be in past";
@override
String get configureTaskchampion => 'Configure Taskchampion';
@override
String get encryptionSecret => 'Encryption Secret';
@override
String get ccsyncBackendUrl => 'CCSync Backend URL';
@override
String get ccsyncClientId => 'Client ID';
@override
String get success => 'Success';
@override
String get credentialsSavedSuccessfully => 'Credentials saved successfully';
@override
String get tip =>
"Tip: Click on the info icon in the top right corner to get your credentials";
@override
String get logs => 'Logs';
@override
String get checkAllDebugLogsHere => 'Check all debug logs here';
}
Loading