From 4946a55215db2fb41061702e3b432de6be71cb3f Mon Sep 17 00:00:00 2001 From: Ivan Agosto Date: Fri, 18 Oct 2019 11:14:44 -0500 Subject: [PATCH] Reordered menu, added history videos --- .../org/libre/agosto/p2play/MainActivity.kt | 33 ++++++++++++++---- .../org/libre/agosto/p2play/ajax/Videos.kt | 20 +++++++++++ .../res/drawable/ic_history_black_24dp.xml | 9 +++++ .../res/drawable/ic_live_tv_black_24dp.xml | 9 +++++ .../main/res/menu/activity_main_drawer.xml | 24 ++++++++++--- app/src/main/res/values-es/strings.xml | 4 +++ app/src/main/res/values/strings.xml | 4 +++ docs/p2playv2.xcf | Bin 0 -> 57241 bytes 8 files changed, 92 insertions(+), 11 deletions(-) create mode 100644 app/src/main/res/drawable/ic_history_black_24dp.xml create mode 100644 app/src/main/res/drawable/ic_live_tv_black_24dp.xml create mode 100644 docs/p2playv2.xcf diff --git a/app/src/main/java/org/libre/agosto/p2play/MainActivity.kt b/app/src/main/java/org/libre/agosto/p2play/MainActivity.kt index 6ddef3c..f31448b 100644 --- a/app/src/main/java/org/libre/agosto/p2play/MainActivity.kt +++ b/app/src/main/java/org/libre/agosto/p2play/MainActivity.kt @@ -222,6 +222,19 @@ class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelecte } } + // Videos history of user + private fun getHistory(){ + swipeContainer.isRefreshing = true + section = "my_videos" + setTitle(R.string.nav_history) + AsyncTask.execute { + val videos = client.videoHistory(ManagerSingleton.token.token, this.pagination) + runOnUiThread { + this.addVideos(videos) + } + } + } + override fun onBackPressed() { if (drawer_layout.isDrawerOpen(GravityCompat.START)) { drawer_layout.closeDrawer(GravityCompat.START) @@ -309,6 +322,8 @@ class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelecte val intent = Intent(this, AboutActivity::class.java) startActivity(intent) } + R.id.nav_history -> getHistory() + R.id.nav_myVideos -> getMyVideos() } drawer_layout.closeDrawer(GravityCompat.START) @@ -322,18 +337,22 @@ class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelecte private fun setSideData(){ if(ManagerSingleton.user.status == 1){ + nav_view.menu.findItem(R.id.ml).isVisible = true + side_usernameTxt?.text = ManagerSingleton.user.username side_emailTxt?.text = ManagerSingleton.user.email - if(ManagerSingleton.user.avatar!="" && side_imageView != null) - Picasso.get().load("https://"+ManagerSingleton.url+ManagerSingleton.user.avatar).into(side_imageView) - side_imageView?.setOnClickListener { - pagination = 0 - getMyVideos() - drawer_layout.closeDrawer(GravityCompat.START) + if(ManagerSingleton.user.avatar!="" && side_imageView != null) { + Picasso.get().load("https://" + ManagerSingleton.url + ManagerSingleton.user.avatar).into(side_imageView) } +// side_imageView?.setOnClickListener { +// pagination = 0 +// getMyVideos() +// drawer_layout.closeDrawer(GravityCompat.START) +// } if(::myMenu.isInitialized){ myMenu.findItem(R.id.action_login).isVisible = false myMenu.findItem(R.id.action_logout).isVisible = true + } } } @@ -343,7 +362,7 @@ class MainActivity : AppCompatActivity(), NavigationView.OnNavigationItemSelecte myMenu.findItem(R.id.action_login).isVisible = true myMenu.findItem(R.id.action_logout).isVisible = false } - + nav_view.menu.findItem(R.id.ml).isVisible = false side_usernameTxt?.text = getString(R.string.nav_header_title) side_emailTxt?.text = getString(R.string.nav_header_subtitle) + " " + this.packageManager.getPackageInfo(this.packageName, 0).versionName side_imageView?.setImageResource(R.drawable.default_avatar) diff --git a/app/src/main/java/org/libre/agosto/p2play/ajax/Videos.kt b/app/src/main/java/org/libre/agosto/p2play/ajax/Videos.kt index fb47ff2..cb7f5bb 100644 --- a/app/src/main/java/org/libre/agosto/p2play/ajax/Videos.kt +++ b/app/src/main/java/org/libre/agosto/p2play/ajax/Videos.kt @@ -108,6 +108,26 @@ class Videos: Client() { return videos } + fun videoHistory(token: String, start: Int = 0): ArrayList{ + val count = ManagerSingleton.videos_count + val params = "start=$start&count=$count" + val con = this._newCon("users/me/history/videos?$params","GET", token) + var videos = arrayListOf() + try { + if (con.responseCode == 200) { + val response = InputStreamReader(con.inputStream) + val data = JsonReader(response) + videos = parseVideos(data) + data.close() + } + } catch(err:Exception){ + err.printStackTrace() + } + + con.disconnect() + return videos + } + fun search(text: String, start: Int = 0): ArrayList{ val count = ManagerSingleton.videos_count val nsfw = ManagerSingleton.nfsw diff --git a/app/src/main/res/drawable/ic_history_black_24dp.xml b/app/src/main/res/drawable/ic_history_black_24dp.xml new file mode 100644 index 0000000..a61de1b --- /dev/null +++ b/app/src/main/res/drawable/ic_history_black_24dp.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/drawable/ic_live_tv_black_24dp.xml b/app/src/main/res/drawable/ic_live_tv_black_24dp.xml new file mode 100644 index 0000000..ca255f9 --- /dev/null +++ b/app/src/main/res/drawable/ic_live_tv_black_24dp.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/menu/activity_main_drawer.xml b/app/src/main/res/menu/activity_main_drawer.xml index da35853..a0d6d88 100644 --- a/app/src/main/res/menu/activity_main_drawer.xml +++ b/app/src/main/res/menu/activity_main_drawer.xml @@ -4,14 +4,30 @@ tools:showIn="navigation_view"> + android:title="@string/nav_menu_myLibrary" + android:visible="false"> + + + + + + + android:title="@string/nav_menu_more"> Local Sobre Suscripciones + Historial + Mi libreria + Videos + Mas Configuracion diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 395025a..27c740d 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -69,6 +69,10 @@ Recent Local About + History + My Library + Videos + More Settings diff --git a/docs/p2playv2.xcf b/docs/p2playv2.xcf new file mode 100644 index 0000000000000000000000000000000000000000..e8765917ab18ae35b9850c760c24eb0fc59744f8 GIT binary patch literal 57241 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 literal 0 HcmV?d00001