Archived
Implemented canteen scraper/parser functionality
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
package com.denizk0461.studip.fragment
|
||||
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.fragment.app.Fragment
|
||||
import androidx.fragment.app.viewModels
|
||||
import com.denizk0461.studip.databinding.FragmentCanteenBinding
|
||||
import com.denizk0461.studip.viewmodel.CanteenViewModel
|
||||
|
||||
class CanteenFragment : Fragment() {
|
||||
|
||||
private var _binding: FragmentCanteenBinding? = null
|
||||
|
||||
// This property is only valid between onCreateView and
|
||||
// onDestroyView.
|
||||
private val binding get() = _binding!!
|
||||
|
||||
private val viewModel: CanteenViewModel by viewModels()
|
||||
|
||||
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
|
||||
_binding = FragmentCanteenBinding.inflate(inflater, container, false)
|
||||
return binding.root
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
|
||||
viewModel.allOffers.observe(viewLifecycleOwner) { offers ->
|
||||
// TODO this must be changed. if an exception is raised, then this will not fire
|
||||
binding.swipeRefreshLayout.isRefreshing = false
|
||||
}
|
||||
|
||||
binding.swipeRefreshLayout.setOnRefreshListener {
|
||||
viewModel.fetchOffers {
|
||||
// binding.swipeRefreshLayout.isRefreshing = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
override fun onDestroyView() {
|
||||
super.onDestroyView()
|
||||
_binding = null
|
||||
}
|
||||
}
|
||||
@@ -1,15 +1,12 @@
|
||||
package com.denizk0461.studip.fragment
|
||||
|
||||
import android.content.Intent
|
||||
import android.os.Bundle
|
||||
import androidx.fragment.app.Fragment
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.fragment.app.viewModels
|
||||
import androidx.navigation.fragment.NavHostFragment.Companion.findNavController
|
||||
import com.denizk0461.studip.R
|
||||
import com.denizk0461.studip.activity.FetcherActivity
|
||||
import com.denizk0461.studip.adapter.StudIPEventAdapter
|
||||
import com.denizk0461.studip.adapter.StudIPEventPageAdapter
|
||||
import com.denizk0461.studip.databinding.FragmentEventBinding
|
||||
@@ -59,7 +56,7 @@ class EventFragment : Fragment() {
|
||||
|
||||
viewPagerAdapter = StudIPEventPageAdapter(listOf(), object : StudIPEventAdapter.OnClickListener {
|
||||
override fun onClick(event: StudIPEvent) {
|
||||
// do nothing
|
||||
|
||||
}
|
||||
override fun onLongClick(event: StudIPEvent) {
|
||||
|
||||
@@ -76,10 +73,6 @@ class EventFragment : Fragment() {
|
||||
switchToCurrentDayView()
|
||||
}
|
||||
|
||||
binding.fab.setOnClickListener { view ->
|
||||
launchWebview()
|
||||
}
|
||||
|
||||
// binding.buttonFirst.setOnClickListener {
|
||||
// findNavController().navigate(R.id.action_FirstFragment_to_SecondFragment)
|
||||
// }
|
||||
@@ -99,16 +92,4 @@ class EventFragment : Fragment() {
|
||||
binding.viewPager.currentItem = dayOfWeek
|
||||
// binding.dayTabLayout.getTabAt(dayOfWeek)?.select()
|
||||
}
|
||||
|
||||
private fun launchWebview() {
|
||||
// findNavController(this).navigate(R.id.action_FirstFragment_to_SecondFragment)
|
||||
startActivity(Intent(context, FetcherActivity::class.java))
|
||||
}
|
||||
|
||||
/**
|
||||
* Highlights the current or next course.
|
||||
*/
|
||||
private fun highlightCurrentCourse() {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,32 +0,0 @@
|
||||
package com.denizk0461.studip.fragment
|
||||
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.denizk0461.studip.databinding.FragmentFoodBinding
|
||||
|
||||
class FoodFragment : Fragment() {
|
||||
|
||||
private var _binding: FragmentFoodBinding? = null
|
||||
|
||||
// This property is only valid between onCreateView and
|
||||
// onDestroyView.
|
||||
private val binding get() = _binding!!
|
||||
|
||||
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
|
||||
_binding = FragmentFoodBinding.inflate(inflater, container, false)
|
||||
return binding.root
|
||||
}
|
||||
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
|
||||
}
|
||||
|
||||
override fun onDestroyView() {
|
||||
super.onDestroyView()
|
||||
_binding = null
|
||||
}
|
||||
}
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.denizk0461.studip.fragment
|
||||
|
||||
import android.annotation.SuppressLint
|
||||
import android.content.Intent
|
||||
import android.net.Uri
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import android.view.LayoutInflater
|
||||
import android.view.View
|
||||
@@ -10,6 +10,7 @@ import android.view.ViewGroup
|
||||
import android.widget.Toast
|
||||
import androidx.fragment.app.Fragment
|
||||
import com.denizk0461.studip.BuildConfig
|
||||
import com.denizk0461.studip.activity.FetcherActivity
|
||||
import com.denizk0461.studip.data.Misc
|
||||
import com.denizk0461.studip.databinding.FragmentSettingsBinding
|
||||
|
||||
@@ -31,15 +32,15 @@ class SettingsFragment : Fragment() {
|
||||
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||
super.onViewCreated(view, savedInstanceState)
|
||||
|
||||
var toast2 = makeToast("2")
|
||||
var toast22 = makeToast("22")
|
||||
var toast222 = makeToast("222")
|
||||
|
||||
// binding.layoutQuarter.setOnClickListener {
|
||||
// isQuarterChecked = !isQuarterChecked
|
||||
// binding.switchQuarter.isChecked = isQuarterChecked
|
||||
// }
|
||||
|
||||
binding.buttonRefreshSchedule.setOnClickListener {
|
||||
launchWebView()
|
||||
}
|
||||
|
||||
binding.switchQuarter.setOnClickListener {
|
||||
isQuarterChecked = !isQuarterChecked
|
||||
}
|
||||
@@ -47,24 +48,15 @@ class SettingsFragment : Fragment() {
|
||||
binding.buttonAppVersion.setOnClickListener {
|
||||
when (appVersionClick) {
|
||||
19 -> {
|
||||
toast2.show()
|
||||
appVersionClick += 1
|
||||
}
|
||||
20 -> {
|
||||
toast2.cancel()
|
||||
toast22.show()
|
||||
appVersionClick += 1
|
||||
}
|
||||
21 -> {
|
||||
toast22.cancel()
|
||||
toast222.show()
|
||||
appVersionClick += 1
|
||||
}
|
||||
22 -> {
|
||||
toast222.cancel()
|
||||
toast2 = makeToast("2")
|
||||
toast22 = makeToast("22")
|
||||
toast222 = makeToast("222")
|
||||
startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(Misc.mysteryLink)))
|
||||
appVersionClick = 0
|
||||
}
|
||||
@@ -72,13 +64,16 @@ class SettingsFragment : Fragment() {
|
||||
}
|
||||
}
|
||||
|
||||
binding.appVersionText.text = BuildConfig.VERSION_NAME
|
||||
@SuppressLint("SetTextI18n")
|
||||
binding.appVersionText.text = "${BuildConfig.VERSION_NAME}-${if (BuildConfig.DEBUG) "debug" else "release"}"
|
||||
}
|
||||
|
||||
private fun makeToast(text: String): Toast = Toast.makeText(context, text, Toast.LENGTH_SHORT)
|
||||
|
||||
override fun onDestroyView() {
|
||||
super.onDestroyView()
|
||||
_binding = null
|
||||
}
|
||||
|
||||
private fun launchWebView() {
|
||||
startActivity(Intent(context, FetcherActivity::class.java))
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user