diff --git a/app/src/main/java/com/example/dtf/PreferencesManager.kt b/app/src/main/java/com/example/dtf/data/PreferencesManager.kt similarity index 95% rename from app/src/main/java/com/example/dtf/PreferencesManager.kt rename to app/src/main/java/com/example/dtf/data/PreferencesManager.kt index 4412218..3fdf91c 100644 --- a/app/src/main/java/com/example/dtf/PreferencesManager.kt +++ b/app/src/main/java/com/example/dtf/data/PreferencesManager.kt @@ -1,4 +1,4 @@ -package com.example.dtf +package com.example.dtf.data import android.content.Context import android.content.SharedPreferences diff --git a/app/src/main/java/com/example/dtf/data/db/AppDatabase.kt b/app/src/main/java/com/example/dtf/data/db/AppDatabase.kt index 43e4963..937a361 100644 --- a/app/src/main/java/com/example/dtf/data/db/AppDatabase.kt +++ b/app/src/main/java/com/example/dtf/data/db/AppDatabase.kt @@ -25,7 +25,6 @@ import com.example.dtf.data.models.User version = 4, exportSchema = false ) -@TypeConverters(Converter::class) abstract class AppDatabase : RoomDatabase() { abstract fun userDao() : UserDao abstract fun categoryDao() : CategoryDao diff --git a/app/src/main/java/com/example/dtf/data/db/Converter.kt b/app/src/main/java/com/example/dtf/data/db/Converter.kt deleted file mode 100644 index e3cfca3..0000000 --- a/app/src/main/java/com/example/dtf/data/db/Converter.kt +++ /dev/null @@ -1,16 +0,0 @@ -package com.example.dtf.data.db - -import androidx.room.TypeConverter -import java.util.Date - -class Converter { - @TypeConverter - fun fromTimestamp(value: Long?): Date? { - return value?.let { Date(it) } - } - - @TypeConverter - fun dateToTimestamp(date: Date?): Long? { - return date?.time?.toLong() - } -} \ No newline at end of file diff --git a/app/src/main/java/com/example/dtf/data/models/Post.kt b/app/src/main/java/com/example/dtf/data/models/Post.kt index a85f64e..2957b76 100644 --- a/app/src/main/java/com/example/dtf/data/models/Post.kt +++ b/app/src/main/java/com/example/dtf/data/models/Post.kt @@ -5,59 +5,6 @@ import androidx.room.Entity import androidx.room.PrimaryKey import kotlinx.serialization.Serializable -//private val posts = listOf( -// Post( -// 1, -// "Что не так с half-life 2", -// "Да всё не так", -// 1, -// mutableVectorOf( -// Comment(1, 2, "Пост бред. Начнём с того, что вот эта твоя манера речи клоунская...", Date(2023, 10, 20)), -// Comment(2, 1, "Да какой бред, чел, я всё по факту сказал", Date(2023, 10, 20)) -// ), -// Date(2023, 10, 22) -// ), -// Post( -// 2, -// "Я действительно ненавижу фильм про титаник", -// "Пруфов не будет", -// 2, -// mutableVectorOf(Comment(1, 2, "Очередной бред от автора", Date(2023, 9, 20))), -// Date(2023, 9, 22) -// ), -// Post( -// 3, -// "\"Госпожа Кагуя\" это переоценённый тайтл", -// "Я, конечно, не смотрел, но мне так кажется. А всё потому, что там происходит такое, что даже Аристотелю не снилось. А может даже Платону. Об этом можно рассуждать тысячи лет, но я смогу уложиться всего в пару слов. И первое слово - этот тайтл полное днище. Ладно, не слово", -// 3, -// mutableVectorOf(Comment(1, 2, "Автора на увольнение", Date(2023, 9, 20))), -// Date(2023, 9, 22) -// ), -// Post( -// 4, -// "\"Восхождение в тени\" это переоценённый тайтл", -// "Я, конечно, не смотрел, но мне так кажется. А всё потому, что там происходит такое, что даже Аристотелю не снилось. А может даже Платону. Об этом можно рассуждать тысячи лет, но я смогу уложиться всего в пару слов. И первое слово - этот тайтл полное днище. Ладно, не слово", -// 3, -// mutableVectorOf(Comment(1, 2, "Автора на увольнение", Date(2023, 9, 20))), -// Date(2023, 9, 22) -// ), -// Post( -// 5, -// "\"Тетрадь смерти\" это переоценённый тайтл", -// "Я, конечно, не смотрел, но мне так кажется. А всё потому, что там происходит такое, что даже Аристотелю не снилось. А может даже Платону. Об этом можно рассуждать тысячи лет, но я смогу уложиться всего в пару слов. И первое слово - этот тайтл полное днище. Ладно, не слово", -// 3, -// mutableVectorOf(Comment(1, 2, "Автора на увольнение", Date(2023, 9, 20))), -// Date(2023, 9, 22) -// ), -// Post( -// 6, -// "\"Бакуман\" это переоценённый тайтл", -// "Я, конечно, не смотрел, но мне так кажется. А всё потому, что там происходит такое, что даже Аристотелю не снилось. А может даже Платону. Об этом можно рассуждать тысячи лет, но я смогу уложиться всего в пару слов. И первое слово - этот тайтл полное днище. Ладно, не слово", -// 3, -// mutableVectorOf(Comment(1, 2, "Автора на увольнение", Date(2023, 9, 20))), -// Date(2023, 9, 22) -// ) -//) @Entity( tableName = "post" diff --git a/app/src/main/java/com/example/dtf/ui/screens/EditPostScreen.kt b/app/src/main/java/com/example/dtf/ui/screens/EditPostScreen.kt index 1670dcb..d8a7209 100644 --- a/app/src/main/java/com/example/dtf/ui/screens/EditPostScreen.kt +++ b/app/src/main/java/com/example/dtf/ui/screens/EditPostScreen.kt @@ -31,7 +31,7 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.hilt.navigation.compose.hiltViewModel import androidx.navigation.NavHostController -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.ui.utils.ScreenPaths import com.example.dtf.ui.viewmodels.EditPostViewModel import com.example.dtf.ui.widgets.MyTextField diff --git a/app/src/main/java/com/example/dtf/ui/screens/LoginScreen.kt b/app/src/main/java/com/example/dtf/ui/screens/LoginScreen.kt index f932381..be2d885 100644 --- a/app/src/main/java/com/example/dtf/ui/screens/LoginScreen.kt +++ b/app/src/main/java/com/example/dtf/ui/screens/LoginScreen.kt @@ -31,7 +31,7 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.hilt.navigation.compose.hiltViewModel import androidx.navigation.NavHostController -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.ui.utils.ScreenPaths import com.example.dtf.ui.viewmodels.LoginViewModel import com.example.dtf.ui.widgets.MyTextField diff --git a/app/src/main/java/com/example/dtf/ui/screens/NewPostScreen.kt b/app/src/main/java/com/example/dtf/ui/screens/NewPostScreen.kt index 21fc867..93887b2 100644 --- a/app/src/main/java/com/example/dtf/ui/screens/NewPostScreen.kt +++ b/app/src/main/java/com/example/dtf/ui/screens/NewPostScreen.kt @@ -35,7 +35,7 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.hilt.navigation.compose.hiltViewModel import androidx.navigation.NavHostController -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Category import com.example.dtf.ui.utils.ScreenPaths import com.example.dtf.ui.viewmodels.NewPostViewModel diff --git a/app/src/main/java/com/example/dtf/ui/screens/PostScreen.kt b/app/src/main/java/com/example/dtf/ui/screens/PostScreen.kt index dd10941..3282000 100644 --- a/app/src/main/java/com/example/dtf/ui/screens/PostScreen.kt +++ b/app/src/main/java/com/example/dtf/ui/screens/PostScreen.kt @@ -41,7 +41,7 @@ import androidx.hilt.navigation.compose.hiltViewModel import androidx.navigation.NavHostController import androidx.paging.compose.collectAsLazyPagingItems import androidx.paging.compose.itemKey -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Comment import com.example.dtf.ui.utils.ScreenPaths import com.example.dtf.ui.viewmodels.PostViewModel diff --git a/app/src/main/java/com/example/dtf/ui/screens/PostsScreen.kt b/app/src/main/java/com/example/dtf/ui/screens/PostsScreen.kt index 29b71b2..dcdced4 100644 --- a/app/src/main/java/com/example/dtf/ui/screens/PostsScreen.kt +++ b/app/src/main/java/com/example/dtf/ui/screens/PostsScreen.kt @@ -39,7 +39,7 @@ import androidx.navigation.NavHostController import androidx.paging.PagingData import androidx.paging.compose.collectAsLazyPagingItems import androidx.paging.compose.itemKey -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Category import com.example.dtf.data.models.Post import com.example.dtf.ui.utils.ScreenPaths diff --git a/app/src/main/java/com/example/dtf/ui/screens/ProfileScreen.kt b/app/src/main/java/com/example/dtf/ui/screens/ProfileScreen.kt index 613ed50..56d6077 100644 --- a/app/src/main/java/com/example/dtf/ui/screens/ProfileScreen.kt +++ b/app/src/main/java/com/example/dtf/ui/screens/ProfileScreen.kt @@ -25,7 +25,7 @@ import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.sp import androidx.hilt.navigation.compose.hiltViewModel import androidx.navigation.NavHostController -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.ui.utils.ScreenPaths import com.example.dtf.ui.viewmodels.ProfileViewModel diff --git a/app/src/main/java/com/example/dtf/ui/screens/TopPostsScreen.kt b/app/src/main/java/com/example/dtf/ui/screens/TopPostsScreen.kt index 64f973a..6077557 100644 --- a/app/src/main/java/com/example/dtf/ui/screens/TopPostsScreen.kt +++ b/app/src/main/java/com/example/dtf/ui/screens/TopPostsScreen.kt @@ -42,7 +42,7 @@ import androidx.navigation.NavHostController import androidx.paging.compose.LazyPagingItems import androidx.paging.compose.collectAsLazyPagingItems import androidx.paging.compose.itemKey -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Category import com.example.dtf.data.models.Post import com.example.dtf.ui.utils.ScreenPaths diff --git a/app/src/main/java/com/example/dtf/ui/viewmodels/EditPostViewModel.kt b/app/src/main/java/com/example/dtf/ui/viewmodels/EditPostViewModel.kt index cd1f630..b5bd8f1 100644 --- a/app/src/main/java/com/example/dtf/ui/viewmodels/EditPostViewModel.kt +++ b/app/src/main/java/com/example/dtf/ui/viewmodels/EditPostViewModel.kt @@ -4,7 +4,7 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Post import com.example.dtf.data.repositories.IPostRepository import dagger.hilt.android.lifecycle.HiltViewModel diff --git a/app/src/main/java/com/example/dtf/ui/viewmodels/LoginViewModel.kt b/app/src/main/java/com/example/dtf/ui/viewmodels/LoginViewModel.kt index 1e18c2a..dde0673 100644 --- a/app/src/main/java/com/example/dtf/ui/viewmodels/LoginViewModel.kt +++ b/app/src/main/java/com/example/dtf/ui/viewmodels/LoginViewModel.kt @@ -4,7 +4,7 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.api.ServerService import com.example.dtf.data.dto.Credentials import dagger.hilt.android.lifecycle.HiltViewModel @@ -24,6 +24,11 @@ class LoginViewModel @Inject constructor( } fun login(sharedPref: PreferencesManager, username: String, password: String) { + if (username.isEmpty() || password.isEmpty()) { + _successState.postValue(false) + return + } + viewModelScope.launch { val token = serverService.login(Credentials(username, password)) diff --git a/app/src/main/java/com/example/dtf/ui/viewmodels/NewPostViewModel.kt b/app/src/main/java/com/example/dtf/ui/viewmodels/NewPostViewModel.kt index 5ca168e..d9a789a 100644 --- a/app/src/main/java/com/example/dtf/ui/viewmodels/NewPostViewModel.kt +++ b/app/src/main/java/com/example/dtf/ui/viewmodels/NewPostViewModel.kt @@ -4,7 +4,7 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Post import com.example.dtf.data.repositories.ICategoryRepository import com.example.dtf.data.repositories.IPostRepository diff --git a/app/src/main/java/com/example/dtf/ui/viewmodels/PostViewModel.kt b/app/src/main/java/com/example/dtf/ui/viewmodels/PostViewModel.kt index 09ea5ec..9f9f45b 100644 --- a/app/src/main/java/com/example/dtf/ui/viewmodels/PostViewModel.kt +++ b/app/src/main/java/com/example/dtf/ui/viewmodels/PostViewModel.kt @@ -5,7 +5,7 @@ import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import androidx.paging.PagingData -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Comment import com.example.dtf.data.models.Like import com.example.dtf.data.models.Post diff --git a/app/src/main/java/com/example/dtf/ui/viewmodels/PostsViewModel.kt b/app/src/main/java/com/example/dtf/ui/viewmodels/PostsViewModel.kt index d312a72..e3f4681 100644 --- a/app/src/main/java/com/example/dtf/ui/viewmodels/PostsViewModel.kt +++ b/app/src/main/java/com/example/dtf/ui/viewmodels/PostsViewModel.kt @@ -2,7 +2,7 @@ package com.example.dtf.ui.viewmodels import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Like import com.example.dtf.data.repositories.ICategoryRepository import com.example.dtf.data.repositories.ILikeRepository diff --git a/app/src/main/java/com/example/dtf/ui/viewmodels/ProfileViewModel.kt b/app/src/main/java/com/example/dtf/ui/viewmodels/ProfileViewModel.kt index 6bd5b74..0d52c75 100644 --- a/app/src/main/java/com/example/dtf/ui/viewmodels/ProfileViewModel.kt +++ b/app/src/main/java/com/example/dtf/ui/viewmodels/ProfileViewModel.kt @@ -3,7 +3,7 @@ package com.example.dtf.ui.viewmodels import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.User import com.example.dtf.data.repositories.offline.OfflineUserRepository import dagger.hilt.android.lifecycle.HiltViewModel diff --git a/app/src/main/java/com/example/dtf/ui/viewmodels/TopPostsViewModel.kt b/app/src/main/java/com/example/dtf/ui/viewmodels/TopPostsViewModel.kt index af71488..260b29d 100644 --- a/app/src/main/java/com/example/dtf/ui/viewmodels/TopPostsViewModel.kt +++ b/app/src/main/java/com/example/dtf/ui/viewmodels/TopPostsViewModel.kt @@ -4,7 +4,7 @@ import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.data.models.Like import com.example.dtf.data.models.Post import com.example.dtf.data.repositories.ICategoryRepository diff --git a/app/src/main/java/com/example/dtf/ui/widgets/BottomNavBar.kt b/app/src/main/java/com/example/dtf/ui/widgets/BottomNavBar.kt index e5ece30..935db2f 100644 --- a/app/src/main/java/com/example/dtf/ui/widgets/BottomNavBar.kt +++ b/app/src/main/java/com/example/dtf/ui/widgets/BottomNavBar.kt @@ -19,7 +19,7 @@ import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.unit.dp import androidx.navigation.NavController import androidx.navigation.compose.currentBackStackEntryAsState -import com.example.dtf.PreferencesManager +import com.example.dtf.data.PreferencesManager import com.example.dtf.ui.utils.ScreenPaths @Composable