Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fun setFiltersUiState(dialogView: View, prefs: SharedPreferences, context: Context){
- val discoursesCheck = dialogView.findViewById<CheckBox>(R.id.filter_discourses)
- val exercisesCheck = dialogView.findViewById<CheckBox>(R.id.filter_exercises)
- val lecturesCheck = dialogView.findViewById<CheckBox>(R.id.filter_lectures)
- discoursesCheck.isChecked = prefs.getBoolean(context.getString(R.string.PREFS_DISCOURSES_VISIBLE), true)
- exercisesCheck.isChecked = prefs.getBoolean(context.getString(R.string.PREFS_EXERCISES_VISIBLE), true)
- lecturesCheck.isChecked = prefs.getBoolean(context.getString(R.string.PREFS_LECTURES_VISIBLE), true)
- }
- fun setFilters(dialogView: View, prefs:SharedPreferences, context: Context){
- val discoursesCheck = dialogView.findViewById<CheckBox>(R.id.filter_discourses)
- val exercisesCheck = dialogView.findViewById<CheckBox>(R.id.filter_exercises)
- val lecturesCheck = dialogView.findViewById<CheckBox>(R.id.filter_lectures)
- prefs.edit()
- .putBoolean(context.getString(R.string.PREFS_DISCOURSES_VISIBLE), discoursesCheck.isChecked)
- .putBoolean(context.getString(R.string.PREFS_EXERCISES_VISIBLE), exercisesCheck.isChecked)
- .putBoolean(context.getString(R.string.PREFS_LECTURES_VISIBLE), lecturesCheck.isChecked)
- .apply()
- }
- fun addLessonToFilteredLessons(context: Context, scheduleItem: ScheduleItem){
- val dbHelper = ScheduleDbHelper(context)
- val db = dbHelper.writableDatabase
- val calendar = Calendar.getInstance()
- calendar.time = scheduleItem.startDate
- val values = ContentValues().apply{
- put(ScheduleContract.FilteredLessonEntry.LESSON_SUBJECT, scheduleItem.subject)
- put(ScheduleContract.FilteredLessonEntry.LESSON_TYPE, scheduleItem.type)
- put(ScheduleContract.FilteredLessonEntry.LESSON_TEACHER, scheduleItem.teacher)
- put(ScheduleContract.FilteredLessonEntry.LESSON_TEACHER_ID, scheduleItem.teacherId)
- put(ScheduleContract.FilteredLessonEntry.LESSON_DAY_OF_WEEK, scheduleItem.dayOfTheWeekStr)
- put(ScheduleContract.FilteredLessonEntry.LESSON_START_HOUR, "${calendar.get(Calendar.HOUR_OF_DAY)}:${calendar.get(Calendar.MINUTE)}")
- }
- db.insert(ScheduleContract.FilteredLessonEntry.TABLE_NAME, null, values)
- val prefs = PreferenceManager.getDefaultSharedPreferences(context)
- prefs.edit().putBoolean(context.getString(R.string.PREFS_REFRESH_SCHEDULE), true).apply()
- }
- fun getFilteredLessons(context: Context): List<FilteredLesson>{
- val dbHelper = ScheduleDbHelper(context)
- val db = dbHelper.readableDatabase
- val cursor = db.query(
- ScheduleContract.FilteredLessonEntry.TABLE_NAME,
- arrayOf(
- ScheduleContract.FilteredLessonEntry._ID,
- ScheduleContract.FilteredLessonEntry.LESSON_SUBJECT,
- ScheduleContract.FilteredLessonEntry.LESSON_TYPE,
- ScheduleContract.FilteredLessonEntry.LESSON_TEACHER,
- ScheduleContract.FilteredLessonEntry.LESSON_TEACHER_ID,
- ScheduleContract.FilteredLessonEntry.LESSON_DAY_OF_WEEK,
- ScheduleContract.FilteredLessonEntry.LESSON_START_HOUR
- ),
- null,
- null,
- null,
- null,
- null
- )
- val filteredLessonsList = mutableListOf<FilteredLesson>()
- try{
- cursor.moveToFirst()
- do{
- val filteredLesson = FilteredLesson(
- cursor.getInt(cursor.getColumnIndex(ScheduleContract.FilteredLessonEntry._ID)),
- cursor.getString(cursor.getColumnIndex(ScheduleContract.FilteredLessonEntry.LESSON_SUBJECT)),
- cursor.getString(cursor.getColumnIndex(ScheduleContract.FilteredLessonEntry.LESSON_TYPE)),
- cursor.getString(cursor.getColumnIndex(ScheduleContract.FilteredLessonEntry.LESSON_TEACHER)),
- cursor.getInt(cursor.getColumnIndex(ScheduleContract.FilteredLessonEntry.LESSON_TEACHER_ID)),
- cursor.getString(cursor.getColumnIndex(ScheduleContract.FilteredLessonEntry.LESSON_DAY_OF_WEEK)),
- cursor.getString(cursor.getColumnIndex(ScheduleContract.FilteredLessonEntry.LESSON_START_HOUR))
- )
- filteredLessonsList.add(filteredLesson)
- }while(cursor.moveToNext())
- cursor.close()
- return filteredLessonsList
- }catch(e: CursorIndexOutOfBoundsException){
- return emptyList()
- }
- }
- fun removeFilteredLesson(id: Int, context: Context){
- val db = ScheduleDbHelper(context).readableDatabase
- db.delete(
- ScheduleContract.FilteredLessonEntry.TABLE_NAME,
- "${ScheduleContract.FilteredLessonEntry._ID}=?",
- arrayOf("$id")
- )
- val prefs = PreferenceManager.getDefaultSharedPreferences(context)
- prefs.edit().putBoolean(context.getString(R.string.PREFS_REFRESH_SCHEDULE), true).apply()
- }
- private fun isInFilteredLessons(scheduleItem: ScheduleItem, filteredLessons: List<FilteredLesson>): Boolean{
- val calendar = Calendar.getInstance()
- calendar.time = scheduleItem.startDate
- val startHour = "${calendar.get(Calendar.HOUR_OF_DAY)}:${calendar.get(Calendar.MINUTE)}"
- for(lesson in filteredLessons){
- if(lesson.subject == scheduleItem.subject
- && lesson.type == scheduleItem.type
- && lesson.teacher == scheduleItem.teacher
- && lesson.teacherId == scheduleItem.teacherId
- && lesson.dayOfWeek == scheduleItem.dayOfTheWeekStr
- && lesson.startHour == startHour){
- return true
- }
- }
- return false
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement