Guest User

Untitled

a guest
May 23rd, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.21 KB | None | 0 0
  1. package com.diyetistan.diyetistanapp.ui
  2.  
  3. import android.content.Intent
  4. import android.os.Bundle
  5. import android.support.v4.app.Fragment
  6. import android.util.Log
  7. import android.view.LayoutInflater
  8. import android.view.View
  9. import android.view.ViewGroup
  10. import android.widget.TextView
  11. import com.diyetistan.diyetistanapp.R
  12. import com.diyetistan.diyetistanapp.SliderActivity.*
  13. import com.diyetistan.diyetistanapp.enums.WebLinksEnum
  14. import com.google.firebase.database.DataSnapshot
  15. import com.google.firebase.database.DatabaseError
  16. import com.google.firebase.database.FirebaseDatabase
  17. import com.google.firebase.database.ValueEventListener
  18. import ss.com.bannerslider.banners.Banner
  19. import ss.com.bannerslider.banners.RemoteBanner
  20. import ss.com.bannerslider.views.BannerSlider
  21.  
  22.  
  23. class ProfileFragment : Fragment(), ValueEventListener {
  24.  
  25. private val database by lazy { FirebaseDatabase.getInstance() }
  26. private val databaseReference by lazy { database.reference.child("WebLinks") }
  27. private val linkList by lazy { ArrayList<String>() }
  28.  
  29. private var bannerSlider1: BannerSlider? = null
  30. private var bannerSlider2: BannerSlider? = null
  31. var intent: Intent? = null
  32.  
  33. companion object {
  34. val TAG: String = ProfileFragment::class.java.simpleName
  35. fun newInstance() = ProfileFragment()
  36. }
  37.  
  38. override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
  39. activity?.title = getString(R.string.title_profile)
  40. val view = inflater.inflate(R.layout.fragment_profile, container, false)
  41. view!!.findViewById<TextView>(R.id.dispTxt)?.text = (activity as MainActivity).savedDispTxt
  42. bannerSlider1 = view.findViewById(R.id.banner_slider1)
  43. bannerSlider2 = view.findViewById(R.id.banner_slider2)
  44.  
  45. databaseReference.addValueEventListener(this)
  46.  
  47. return view
  48. }
  49.  
  50. private fun setupBannerSlider() {
  51.  
  52. addBanners()
  53.  
  54. bannerSlider1!!.setOnBannerClickListener { position ->
  55.  
  56. if (position.toString() == "0") {
  57. val intent = Intent(activity, YemekSlider1Activity::class.java)
  58. intent.putExtra(WebLinksEnum.YemekSlider0.toString(), linkList[12])
  59. startActivity(intent)
  60. }
  61. if (position.toString() == "1") {
  62. val intent = Intent(activity, YemekSlider2Activity::class.java)
  63. intent.putExtra(WebLinksEnum.YemekSlider1.toString(), linkList[13])
  64. startActivity(intent)
  65. }
  66. if (position.toString() == "2") {
  67. val intent = Intent(activity, YemekSlider3Activity::class.java)
  68. intent.putExtra(WebLinksEnum.YemekSlider2.toString(), linkList[14])
  69. startActivity(intent)
  70. }
  71. if (position.toString() == "3") {
  72. val intent = Intent(activity, YemekSlider4Activity::class.java)
  73. intent.putExtra(WebLinksEnum.YemekSlider3.toString(), linkList[15])
  74. startActivity(intent)
  75. }
  76. }
  77.  
  78. bannerSlider2!!.setOnBannerClickListener { position ->
  79.  
  80. if (position.toString() == "0") {
  81. val intent = Intent(activity, DiyetSlider1Activity::class.java)
  82. intent.putExtra(WebLinksEnum.DiyetSlider0.toString(), linkList[0])
  83. startActivity(intent)
  84. }
  85. if (position.toString() == "1") {
  86. val intent = Intent(activity, DiyetSlider2Activity::class.java)
  87. intent.putExtra(WebLinksEnum.DiyetSlider1.toString(), linkList[1])
  88. startActivity(intent)
  89. }
  90. if (position.toString() == "2") {
  91. val intent = Intent(activity, DiyetSlider3Activity::class.java)
  92. intent.putExtra(WebLinksEnum.DiyetSlider2.toString(), linkList[2])
  93. startActivity(intent)
  94. }
  95. if (position.toString() == "3") {
  96. val intent = Intent(activity, DiyetSlider4Activity::class.java)
  97. intent.putExtra(WebLinksEnum.DiyetSlider3.toString(), linkList[3])
  98. startActivity(intent)
  99. }
  100. }
  101. }
  102.  
  103. private fun addBanners() {
  104. val remoteBanners1 = ArrayList<Banner>()
  105. val remoteBanners2 = ArrayList<Banner>()
  106. //Add banners using image urls
  107. remoteBanners1.add(RemoteBanner(linkList[8]))
  108. remoteBanners1.add(RemoteBanner(linkList[9]))
  109. remoteBanners1.add(RemoteBanner(linkList[10]))
  110. remoteBanners1.add(RemoteBanner(linkList[11]))
  111. bannerSlider1!!.setBanners(remoteBanners1)
  112.  
  113. remoteBanners2.add(RemoteBanner(linkList[4]))
  114. remoteBanners2.add(RemoteBanner(linkList[5]))
  115. remoteBanners2.add(RemoteBanner(linkList[6]))
  116. remoteBanners2.add(RemoteBanner(linkList[7]))
  117. bannerSlider2!!.setBanners(remoteBanners2)
  118.  
  119. }
  120.  
  121. override fun onCancelled(databaseError: DatabaseError?) {
  122.  
  123. Log.e("Profile Fragment", "WebLinks failed to fetch")
  124. }
  125.  
  126. override fun onDataChange(dataSnapshot: DataSnapshot?) {
  127.  
  128. linkList.clear()
  129.  
  130. dataSnapshot?.children?.forEach { dataItem ->
  131.  
  132. val webLink = dataItem.getValue(String::class.java)
  133. webLink?.let { linkList.add(it) }
  134. }
  135.  
  136. setupBannerSlider()
  137. }
  138. }
Add Comment
Please, Sign In to add comment