Просмотр исходного кода

Added notes when creating todo book

Vadik Sirekanyan 7 лет назад
Родитель
Сommit
919941932c

+ 11 - 5
app/src/main/java/com/sirekanyan/knigopis/feature/book/BookActivity.kt

@@ -5,10 +5,10 @@ import android.content.Intent
 import android.os.Bundle
 import android.widget.SeekBar
 import android.widget.SeekBar.OnSeekBarChangeListener
-import com.sirekanyan.knigopis.R
-import com.sirekanyan.knigopis.common.BaseActivity
 import com.sirekanyan.knigopis.MAX_BOOK_PRIORITY
 import com.sirekanyan.knigopis.MIN_BOOK_PRIORITY
+import com.sirekanyan.knigopis.R
+import com.sirekanyan.knigopis.common.BaseActivity
 import com.sirekanyan.knigopis.common.extensions.*
 import com.sirekanyan.knigopis.common.functions.createBookImageUrl
 import com.sirekanyan.knigopis.common.functions.extra
@@ -34,11 +34,17 @@ private val EXTRA_BOOK_FINISHED = extra("book_finished")
 
 fun Context.createNewBookIntent() = Intent(this, BookActivity::class.java)
 
-fun Context.createNewBookIntent(title: String, author: String, progress: Int? = null): Intent =
+fun Context.createTodoBookIntent(title: String, author: String, userName: String): Intent =
+    Intent(this, BookActivity::class.java)
+        .putExtra(EXTRA_BOOK_TITLE, title)
+        .putExtra(EXTRA_BOOK_AUTHOR, author)
+        .putExtra(EXTRA_BOOK_NOTES, getString(R.string.book_notes_copied, userName))
+
+fun Context.createDoneBookIntent(title: String, author: String): Intent =
     Intent(this, BookActivity::class.java)
         .putExtra(EXTRA_BOOK_TITLE, title)
         .putExtra(EXTRA_BOOK_AUTHOR, author)
-        .putExtra(EXTRA_BOOK_PROGRESS, progress)
+        .putExtra(EXTRA_BOOK_PROGRESS, MAX_BOOK_PRIORITY)
 
 fun Context.createEditBookIntent(book: BookDataModel): Intent =
     Intent(this, BookActivity::class.java)
@@ -170,8 +176,8 @@ class BookActivity : BaseActivity() {
         }
         authorEditText.setText(intent.getStringExtra(EXTRA_BOOK_AUTHOR))
         progressSeekBar.setProgressSmoothly(intent.getIntExtra(EXTRA_BOOK_PROGRESS, 0))
+        notesTextArea.setText(intent.getStringExtra(EXTRA_BOOK_NOTES))
         if (!isNewBook) {
-            notesTextArea.setText(intent.getStringExtra(EXTRA_BOOK_NOTES))
             if (wasFinished) {
                 yearEditText.setText(intent.getStringExtra(EXTRA_BOOK_YEAR))
                 monthEditText.setText(intent.getStringExtra(EXTRA_BOOK_MONTH))

+ 9 - 8
app/src/main/java/com/sirekanyan/knigopis/feature/user/UserActivity.kt

@@ -7,18 +7,18 @@ import android.os.Bundle
 import android.support.v7.widget.LinearLayoutManager
 import android.view.Menu
 import android.view.MenuItem
-import com.sirekanyan.knigopis.MAX_BOOK_PRIORITY
 import com.sirekanyan.knigopis.R
 import com.sirekanyan.knigopis.common.BaseActivity
-import com.sirekanyan.knigopis.common.extensions.*
-import com.sirekanyan.knigopis.common.functions.extra
-import com.sirekanyan.knigopis.common.functions.logError
 import com.sirekanyan.knigopis.common.android.dialog.DialogFactory
 import com.sirekanyan.knigopis.common.android.dialog.createDialogItem
 import com.sirekanyan.knigopis.common.android.header.HeaderItemDecoration
 import com.sirekanyan.knigopis.common.android.header.StickyHeaderImpl
+import com.sirekanyan.knigopis.common.extensions.*
+import com.sirekanyan.knigopis.common.functions.extra
+import com.sirekanyan.knigopis.common.functions.logError
 import com.sirekanyan.knigopis.createParameters
-import com.sirekanyan.knigopis.feature.book.createNewBookIntent
+import com.sirekanyan.knigopis.feature.book.createDoneBookIntent
+import com.sirekanyan.knigopis.feature.book.createTodoBookIntent
 import com.sirekanyan.knigopis.model.BookDataModel
 import com.sirekanyan.knigopis.repository.Configuration
 import kotlinx.android.synthetic.main.user_activity.*
@@ -40,6 +40,7 @@ class UserActivity : BaseActivity() {
     private val interactor by inject<UserInteractor>()
     private val dialogs by inject<DialogFactory>(parameters = createParameters())
     private val userId by lazy { intent.getStringExtra(EXTRA_USER_ID) }
+    private val userName by lazy { intent.getStringExtra(EXTRA_USER_NAME) }
     private val booksAdapter = UserBooksAdapter(::onBookLongClicked)
     private lateinit var unsubscribeOption: MenuItem
 
@@ -49,7 +50,7 @@ class UserActivity : BaseActivity() {
         }
         super.onCreate(savedInstanceState)
         setContentView(R.layout.user_activity)
-        toolbar.title = intent.getStringExtra(EXTRA_USER_NAME)
+        toolbar.title = userName
         toolbarImage.setCircleImage(
             intent.getStringExtra(EXTRA_USER_PHOTO),
             R.drawable.oval_dark_placeholder_background
@@ -145,10 +146,10 @@ class UserActivity : BaseActivity() {
         dialogs.showDialog(
             resources.getFullTitleString(book.title, book.author),
             createDialogItem(R.string.user_button_todo, R.drawable.ic_playlist_add) {
-                startActivity(createNewBookIntent(book.title, book.author))
+                startActivity(createTodoBookIntent(book.title, book.author, userName))
             },
             createDialogItem(R.string.user_button_done, R.drawable.ic_playlist_add_check) {
-                startActivity(createNewBookIntent(book.title, book.author, MAX_BOOK_PRIORITY))
+                startActivity(createDoneBookIntent(book.title, book.author))
             }
         )
     }

+ 1 - 0
app/src/main/res/values-ru/strings.xml

@@ -71,6 +71,7 @@
     <string name="book.hint.day">День</string>
     <string name="book.hint.notes">Примечания</string>
     <string name="book.checkbox.done">Прочитана</string>
+    <string name="book.notes.copied">Найдено у %s</string>
 
     <!-- book menu -->
     <string name="book.option.save">Сохранить</string>

+ 1 - 0
app/src/main/res/values/strings.xml

@@ -70,6 +70,7 @@
     <string name="book.hint.day">Day</string>
     <string name="book.hint.notes">Notes</string>
     <string name="book.checkbox.done">Done</string>
+    <string name="book.notes.copied">Copied from %s</string>
 
     <!-- book menu -->
     <string name="book.option.save">Save</string>