Skip to content
Open
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
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
package com.amaze.filemanager.ui.fragments.data

data class BookmarkData(
val name: String,
val path: String,
)
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
package com.amaze.filemanager.ui.fragments.preferencefragments

import android.content.SharedPreferences
import androidx.lifecycle.ViewModel
import androidx.preference.Preference
import androidx.preference.PreferenceCategory
import com.amaze.filemanager.R
import com.amaze.filemanager.filesystem.files.FileUtils
import com.amaze.filemanager.ui.fragments.data.BookmarkData
import com.amaze.filemanager.ui.views.WarnableTextInputValidator
import com.amaze.filemanager.utils.DataUtils

class BookmarkPrefsViewModel : ViewModel() {
val position: MutableMap<Preference, Int> = HashMap()
var bookmarksList: PreferenceCategory? = null

fun isValidBookmarkPath(

Check notice on line 17 in app/src/main/java/com/amaze/filemanager/ui/fragments/preferencefragments/BookmarkPrefsViewModel.kt

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

app/src/main/java/com/amaze/filemanager/ui/fragments/preferencefragments/BookmarkPrefsViewModel.kt#L17

The function isValidBookmarkPath is missing documentation.
name: String,
path: String,
dataUtils: DataUtils,
prefs: SharedPreferences,
): WarnableTextInputValidator.ReturnState {
return when {
path.isBlank() ->
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.ftp_path_change_error_invalid,
)

dataUtils.containsBooks(
arrayOf(
name,
path,
),
) != -1 ->
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.bookmark_exists,
)

!FileUtils.isPathAccessible(
path,
prefs,
) ->
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.ftp_path_change_error_invalid,
)

else -> WarnableTextInputValidator.ReturnState()
}
}

fun isValidBookmarkName(name: String): WarnableTextInputValidator.ReturnState {

Check notice on line 54 in app/src/main/java/com/amaze/filemanager/ui/fragments/preferencefragments/BookmarkPrefsViewModel.kt

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

app/src/main/java/com/amaze/filemanager/ui/fragments/preferencefragments/BookmarkPrefsViewModel.kt#L54

The function isValidBookmarkName is missing documentation.
return when {
name.isBlank() ->
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.invalid_name,
)

else -> WarnableTextInputValidator.ReturnState()
}
}

fun isValidBookmark(

Check notice on line 66 in app/src/main/java/com/amaze/filemanager/ui/fragments/preferencefragments/BookmarkPrefsViewModel.kt

View check run for this annotation

Codacy Production / Codacy Static Code Analysis

app/src/main/java/com/amaze/filemanager/ui/fragments/preferencefragments/BookmarkPrefsViewModel.kt#L66

The function isValidBookmark is missing documentation.
bookmark: BookmarkData,
dataUtils: DataUtils,
prefs: SharedPreferences,
): Pair<BookmarkField?, WarnableTextInputValidator.ReturnState> {
return when {
bookmark.name.isBlank() ->
Pair(
BookmarkField.NAME,
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.invalid_name,
),
)
bookmark.path.isBlank() ->
Pair(
BookmarkField.PATH,
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.ftp_path_change_error_invalid,
),
)
dataUtils.containsBooks(
arrayOf(
bookmark.name,
bookmark.path,
),
) != -1 ->
Pair(
BookmarkField.PATH,
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.bookmark_exists,
),
)
!FileUtils.isPathAccessible(
bookmark.path,
prefs,
) ->
Pair(
BookmarkField.PATH,
WarnableTextInputValidator.ReturnState(
WarnableTextInputValidator.ReturnState.STATE_ERROR,
R.string.ftp_path_change_error_invalid,
),
)

else -> Pair(null, WarnableTextInputValidator.ReturnState())
}
}
}

enum class BookmarkField {
NAME,
PATH,
}
Loading