denizk0461
|
1f05fad84c
|
Links in canteen news are now fetched and can be clicked
|
2023-07-04 15:06:40 +02:00 |
|
denizk0461
|
a5d8e157de
|
Timetables can now be edited and deleted via sheet from SettingsFragment.kt
|
2023-07-04 14:47:19 +02:00 |
|
denizk0461
|
ca2cfe071f
|
Updated dependencies
|
2023-07-04 12:54:42 +02:00 |
|
denizk0461
|
0d0bc1d1a2
|
Stud.IP events now get added to their proper timetable rather than being nuked on every refresh; users can now switch between timetables through the settings app
|
2023-07-04 12:51:12 +02:00 |
|
denizk0461
|
694d962896
|
Added Timetable.kt which was a PAIN because SQLite does not support ADD FOREIGN KEY on ALTER TABLE, and as such, the required workaround is to create a temporary table with the new constraint added, insert the values from the old table into the new table, drop the old table, and finally rename the new table to the name of the old table so that the app thinks that nothing ever happened... UGH
|
2023-07-03 15:47:55 +02:00 |
|
denizk0461
|
97b713a578
|
WeserPlaner 1.1.0: implemented canteen view in CompactOverviewFragment.kt
|
2023-06-04 20:45:38 +02:00 |
|
denizk0461
|
35283f3544
|
Compact layout: back stack now gets popped every time the user navigates back using the back button embedded in the fragment layout
|
2023-06-04 17:51:40 +02:00 |
|
denizk0461
|
8f612d3c31
|
Added back buttons on all user-facing fragments that show when compact layout is used
|
2023-06-04 17:42:30 +02:00 |
|
denizk0461
|
6d1ab773dc
|
Added navigation graph and corresponding user preference for additional app layout option
|
2023-06-04 16:59:04 +02:00 |
|
denizk0461
|
26c89108bf
|
Finished IntroductionActivity.kt; fixed a bug in StwParser.kt that would throw an error upon accessing the UI due to a missing withContext() call. This error seemed to (visibly?) happen on API level 24, but not on 30+
|
2023-06-04 15:34:32 +02:00 |
|
denizk0461
|
01acb1c4b5
|
Moved first launch preference out of EventFragment.kt to be moved into the newly created tutorial/introductory screen IntroductionActivity.kt
|
2023-06-04 12:39:54 +02:00 |
|
denizk0461
|
36bede6201
|
Enabled Jetifier since third-party libraries may require it; in-development options for events are now hidden if the user has not explicitly enabled them
|
2023-06-04 12:27:21 +02:00 |
|
denizk0461
|
98a3a13623
|
Added TimetableOverviewActivity.kt and a means to launch via a button through EventFragment.kt; implementation unfinished
|
2023-05-25 12:32:10 +02:00 |
|
denizk0461
|
e52a055cf1
|
Added FormattedDate.kt to produce formatted strings more easily; TaskOverviewAdapter.kt now produces expandable items
|
2023-05-23 12:39:43 +02:00 |
|
denizk0461
|
ce0667300d
|
Added ReminderStatus.kt to keep track of the status of a future notification implementation; moved enums and similar classes to values directory
|
2023-05-23 08:35:34 +02:00 |
|
denizk0461
|
a1f18b3548
|
Task overview now has a RecyclerView adapter and displays dummy data in empty items; added database queries to retrieve tasks
|
2023-05-22 15:32:19 +02:00 |
|
denizk0461
|
61155eaec4
|
Added button to change order for tasks (functionality unimplemented); moved options menu for events to long press, single click is now functionless
|
2023-05-22 14:16:56 +02:00 |
|
denizk0461
|
75724ace18
|
Added an options menu for events; moved delete option to the new options menu
|
2023-05-21 22:16:20 +02:00 |
|
denizk0461
|
e99a58de54
|
Added a floating action button to add tasks in TaskOverviewFragment.kt
|
2023-05-21 19:59:38 +02:00 |
|
denizk0461
|
b21953c571
|
Added data type EventTask.kt for the task fragment; added timetableId to StudIPEvent.kt to assign events with a specific timetable, for a future implementation of being able to store multiple timetables simultaneously; database scheme will now be exported to allow for automatic migrations
|
2023-05-21 15:29:34 +02:00 |
|
denizk0461
|
2675e5b7f3
|
Added measures to make sure the user logs into their schedule before fetching can commence
|
2023-05-21 09:16:27 +02:00 |
|
denizk0461
|
059502242b
|
Migrated build.gradle files to Kotlin DSL
|
2023-05-20 23:49:06 +02:00 |
|
denizk0461
|
fb155550b3
|
New fragments can now be accessed via an experimental setting. They tell the user via snack message that their functionality is not yet implemented
|
2023-05-20 23:01:53 +02:00 |
|
denizk0461
|
ff930b89c0
|
Added ExamOverviewFragment.kt and RoomFinderFragment.kt as well as respective layouts and view models to implement later; minor reformatting
|
2023-05-20 22:03:51 +02:00 |
|
denizk0461
|
cbea5f124d
|
Fixed colours for icons to tell the user that canteen offers are hidden or that they have no events; added tooltips to buttons in canteen fragment; edited README.md to use new iamge paths
|
2023-05-20 19:12:03 +02:00 |
|
denizk0461
|
1c31d422fa
|
WeserPlaner 1.0.3: adjusted layout of AllergenSheet.kt to display allergens and additives separately; FetcherActivity.kt now features a button to go directly to the user's schedule, if logged in; replaced toast messages with snack bars; ScheduleUpdateSheet.kt now notifies the user about database transactions via snack bar; schedule view now tells the user if there are no events scheduled for a day
|
2023-05-14 23:09:06 +02:00 |
|
denizk0461
|
8f69b5f381
|
Adjusted layout of AllergenSheet.kt to display allergens and additives separately
|
2023-05-14 21:44:05 +02:00 |
|
denizk0461
|
559ec22734
|
Adjusted close buttons for sheets to be slightly highlighted
|
2023-05-14 20:16:02 +02:00 |
|
denizk0461
|
14e379eebf
|
CanteenPageFragment.kt now displays the count of offers that have been hidden due to allergen and dietary preferences
|
2023-05-14 19:49:09 +02:00 |
|
denizk0461
|
d4e64018d2
|
Refactored preference functions so that view models cannot access preferences directly, instead having to use get/set methods, which also solves a potential bug source of defining different default values for certain properties in different view models
|
2023-05-14 13:10:47 +02:00 |
|
denizk0461
|
d9a4ead7ec
|
Flattened structure of StwParser.kt somewhat; CanteenFragment.kt now shows an error snack if the user tries to switch canteens while another one is being fetched; made slight adjustments to the translations
|
2023-05-14 09:00:08 +02:00 |
|
denizk0461
|
2311cc46ad
|
Adjusted UI elements in CanteenFragment.kt to clean up the UI
|
2023-05-13 19:45:36 +02:00 |
|
denizk0461
|
2798e0ecbb
|
Moved development codes from DevCodeSheet.kt to a (by default) hidden section of SettingsFragment.kt; added further information about the build in that section
|
2023-05-13 19:31:27 +02:00 |
|
denizk0461
|
7ed230b4b9
|
Changed FABs into Extended FABs that collapse on scroll; updated FABs and scrolling behaviour of app bars; removed dimens.xml files for landscape and larger widths that had been generated by Android Studio
|
2023-05-13 10:00:40 +02:00 |
|
denizk0461
|
1177b8b14e
|
FABs in canteen fragment now dodge away from snack bars; snack bar now used to tell the user that no news are available for a canteen
|
2023-05-12 18:51:36 +02:00 |
|
denizk0461
|
6053e8a9c4
|
WeserPlaner 1.0.2: canteen news button is now highlighted if news are available, and the news sheet will now only be shown if there are any news available. Otherwise, a toast will tell the user that no news are available.
|
2023-05-12 11:40:43 +02:00 |
|
denizk0461
|
2d3dd390bf
|
Fixed StwParser.kt not fetching all required data to show opening hours of the canteens; small further tweaks to the structure and KDoc of StwParser.kt
|
2023-05-12 11:03:56 +02:00 |
|
denizk0461
|
b88c831530
|
Modified logic to more consistently show the fetch button if the schedule is empty, and hide it if there are schedule items
|
2023-05-11 22:10:08 +02:00 |
|
denizk0461
|
1e8cc694a3
|
Fixed some slight issues with the German translation: 2nd person singular "du" was only sometimes capitalised "Du", now it never is; one instance where "The" was used in place of "Die"
|
2023-05-11 21:38:38 +02:00 |
|
denizk0461
|
a61f072055
|
Added a button to direct the user to download their schedule from Stud.IP if they have not done any modifications to their schedule; fixed a bug that would show opening hours of the currently selected canteen or crash the app whenever the info button in FetcherActivity.kt was clicked
|
2023-05-11 21:31:41 +02:00 |
|
denizk0461
|
91ffcf0637
|
CanteenFragment.kt now refreshes automatically on initial launch
|
2023-05-11 15:13:43 +02:00 |
|
denizk0461
|
6dccb287ab
|
Adjusted text to show the user when they have changed their allergen preferences; changed licences text
|
2023-05-11 14:56:33 +02:00 |
|
denizk0461
|
81765db0db
|
Quick fix before publishing: adjusted colours for new MaterialButtonGroup to fit in with the other elements
|
2023-05-10 21:31:26 +02:00 |
|
denizk0461
|
e33414b7e9
|
WeserPlaner 1.0.1: pricing can now be adjusted - users can pick whether they want to see pricing for students or for employees; fragment launch settings has been changed to use a MaterialButtonGroup to support adding more options down the line
|
2023-05-10 21:14:17 +02:00 |
|
denizk0461
|
9ada2ca462
|
AllergenConfigSheet.kt now updates SettingsFragment.kt to display the count of allergens the user has set; made changes to several strings and minor UI tweaks
|
2023-05-10 18:43:06 +02:00 |
|
denizk0461
|
218bc89873
|
Changed TextSheet to use a ViewModel for showing content that is fetched from the database. Uses TextSheetContentId to determine which LiveData to observe.
|
2023-05-09 14:19:45 +02:00 |
|
denizk0461
|
6cbfe71e62
|
Added functionality to view news for a canteen; fixed a bug that would prevent the offers from being fetched for canteens without news; BUG: news are still a bit buggy, check for crashes
|
2023-05-09 12:22:40 +02:00 |
|
denizk0461
|
b42118ed94
|
shrinkResources now enabled; debugSymbolLevel set to SYMBOL_TABLE; StwParser.kt now fetches news from the top of the website, if any are available; fixed a bug that would cut off shadows from the largest FAB in CanteenFragment.kt
|
2023-05-09 11:34:31 +02:00 |
|
denizk0461
|
603955b53b
|
WeserPlaner 1.0.0 v.3: now using R8 minifier. Added appropriate ProGuard rules
|
2023-05-07 11:17:32 +02:00 |
|
denizk0461
|
4ad952f1ae
|
WeserPlaner 1.0.0: updated minor things and changed name from 'Stud.IP Timetable' to 'WeserPlaner'
|
2023-05-06 22:56:37 +02:00 |
|
denizk0461
|
e1ea3ecc11
|
New icon; changed colour palette to reflect the university's colour design a little better
|
2023-05-05 15:52:30 +02:00 |
|
denizk0461
|
5d544625ad
|
Reverted colours from green testing colours to red; palette changed slightly from the previous red palette
|
2023-05-05 13:13:25 +02:00 |
|
denizk0461
|
a0fda22705
|
finally fixed that fucking pink fucking TimePickerDialog fucking button fuck fuck fuck
|
2023-05-05 13:09:27 +02:00 |
|
denizk0461
|
8a416b30fd
|
Added small hints to FetcherActivity.kt to help out the user
|
2023-05-05 11:53:44 +02:00 |
|
denizk0461
|
e17a81e604
|
CanteenFragment.kt: replaced buttons for opening hours and canteen switch embedded in the app bar with floating action buttons; implemented a possible fix for the app crashing after refreshing the canteen plan. This may have been caused by accessing the view/context of the fragment to let the user know that the refresh succeeded or encountered an error. Reference will be null by the time the fragment is inactive, causing a NullPointerException
|
2023-05-04 15:09:10 +02:00 |
|
denizk0461
|
5ca5788899
|
Replaced custom TimePickerFragment.kt with standard MaterialTimePicker
|
2023-05-04 13:29:34 +02:00 |
|
denizk0461
|
50c7bfebba
|
Fixed TimePickerFragment.kt crashing on configuration change by parcelising OnTimeSetListener interface - I didn't even know that that was possible tbh; fragments now use childFragmentManager instead of the activity's supportFragmentManager to instantiate bottom sheets
|
2023-05-04 12:26:56 +02:00 |
|
denizk0461
|
3d508dff6c
|
(re-)added option to launch timetable on the current day; reinstated functionality to launch app on CanteenFragment.kt
|
2023-05-04 08:32:12 +02:00 |
|
denizk0461
|
9e5277a5f6
|
All sheets now have a button to dismiss the sheet
|
2023-05-03 21:49:18 +02:00 |
|
denizk0461
|
df1d127a17
|
Implemented functionality for adding a new event manually; added floating action buttons for adding an event and refreshing the canteen offers
|
2023-05-03 14:16:32 +02:00 |
|
denizk0461
|
ae8db7ce48
|
StudIPParser.kt now stops fetching items that don't provide full information, and tells the user how many items were skipped
|
2023-05-03 11:10:34 +02:00 |
|
denizk0461
|
7f0659d094
|
StudIPParser.kt now fetches days dynamically, allowing it to skip over days that are hidden from the timetable without crashing (hopefully)
|
2023-05-03 09:58:21 +02:00 |
|
denizk0461
|
a5c66aaaff
|
FetcherActivity.kt now has a bottom app bar with useful actions and extends FragmentActivity instead of AppCompatActivity to show a tutorial bottom sheet
|
2023-05-02 22:35:19 +02:00 |
|
denizk0461
|
36a7ae0035
|
Replaced fragment switching functionality in MainActivity.kt with Navigation component, simplifying logic significantly; upgraded to AGP 8.0.1
|
2023-05-02 20:52:56 +02:00 |
|
denizk0461
|
51c4c9120b
|
Scrolling ability has been added to the toolbars of the fragments, but in the process, I ducked up the canteen fragment. TODO: figure out a solution for where to put the chip group
|
2023-05-02 16:05:33 +02:00 |
|
denizk0461
|
2f4b205703
|
Converted all bottom sheets to use blank constructors and instead rely on bundles to retrieve data/objects, or custom view models to execute functions
|
2023-05-02 15:02:47 +02:00 |
|
denizk0461
|
5a9ab267aa
|
All sheets now have the ability to scroll; a custom selectable item background has been added to clickable views to get a custom coloured ripple effect on click
|
2023-05-01 22:19:44 +02:00 |
|
denizk0461
|
b0631d323e
|
User can now select allergens to exclude from the canteen offers
|
2023-05-01 19:17:35 +02:00 |
|
denizk0461
|
79f8e9cfca
|
Activities are now kept on configuration change (e.g. rotation), which in turn keeps the fragments alive during rotation
|
2023-05-01 09:51:46 +02:00 |
|
denizk0461
|
d4737d8e14
|
Implemented separate ColorStateLists for the individual chips in CanteenFragment.kt to show their distinct colours when clicked
|
2023-05-01 09:35:01 +02:00 |
|
denizk0461
|
079e66ad50
|
Added app language support (I think); fragments rely on Bundles instead of constructor parameters to get data, mitigating a source of crashes
|
2023-04-30 22:47:59 +02:00 |
|
denizk0461
|
7243df0f06
|
Further error handling. Also given the user the option to colour dietary preference icons. Colours have partially been derived from those used on stw-bremen.de but have all been processed through the theme builder on m3.material.io
|
2023-04-29 22:26:26 +02:00 |
|
denizk0461
|
2bf340bdff
|
TabLayoutMediator has been re-instantiated, hopefully in a form that is less crash-prone. Crashes will also be handled now in StwParser.kt
|
2023-04-29 10:56:52 +02:00 |
|
denizk0461
|
8fb41d6520
|
Edited canteen views to have direct database access in the CanteenPageFragment.kt, allowing for filtering the individual days through the database; filtering now works (with changes animated!!) through updating a LiveData and observing it in the page fragment
|
2023-04-28 22:44:23 +02:00 |
|
denizk0461
|
509a0434c5
|
Possibly fixed-for-good a bug that caused events to be fetched but not stored properly in the database; I believe this was caused by FetcherActivity.kt sequentially executing nukeEvents() and insertEvents(), but doing both asynchronously, and individually, which could mean that insertEvents() finishes before nukeEvents() and therefore nukeEvents() would delete the old events as well as the new ones. This doesn't seem entirely logical to me, as no ConflictStrategy has been configured, and inserting new events before the old ones have been cleared (since they both start their primary keys at 0) would have crashed the app.
|
2023-04-28 15:14:50 +02:00 |
|
denizk0461
|
aa5d32e64a
|
Updated EventPageFragment.kt to have access to its own ViewModel and, by extension, its own reference to the database, which forgoes the need to transport data from EventFragment.kt through StudIPEventPageAdapter.kt to EventPageFragment.kt and allows for filtering for a specific day's items through the database rather than needing to iterate through the list via an extension function manually. Also implemented DiffUtil to perform individual updates rather than calling notifyDataSetChanged() every time a single item has been changed.
|
2023-04-28 11:18:05 +02:00 |
|
denizk0461
|
ee0934f29b
|
Fixed a bug hiding all Stud.IP events from the user's view by... renaming the database table. yeah. i don't even know anymore.
|
2023-04-28 10:30:30 +02:00 |
|
denizk0461
|
ce7b854e8c
|
StwParser.kt now collects all its data before adding everything to the database all at once, fixing problems where LiveData would update before all transactions were finished; ViewPagers have been updated to use Adapters extending FragmentStateAdapter instead of RecyclerView.Adapter
|
2023-04-27 21:58:10 +02:00 |
|
denizk0461
|
ccd77a5daf
|
Made further documentation and safety changes. Scraper classes (StudIPParser.kt, StwParser.kt) still need to be checked for safety.
|
2023-04-27 20:27:42 +02:00 |
|
denizk0461
|
9d6489f83b
|
Implemented ability to change the fragment opened on app start; made some optimisations to DietaryPreferences.kt. BUG: tab layout mediator is annoying af
|
2023-04-27 15:15:29 +02:00 |
|
denizk0461
|
1828a4b02e
|
Button for switching an event's timestamps to show the academic quarter is now properly animated (I think)
|
2023-04-27 12:47:50 +02:00 |
|
denizk0461
|
a6a1309bce
|
Implemented button to change dates for an event to reflect the academic quarter
|
2023-04-27 08:20:56 +02:00 |
|
denizk0461
|
540a2a7b9a
|
Canteen adapter now tells the user when no offers are available for a given day
|
2023-04-26 20:17:35 +02:00 |
|
denizk0461
|
939bc06441
|
BUGFIX: opening CanteenFragment.kt more than once would disallow refreshing from working properly
BUGFIX: fragments launch slowly when quickly clicking through the bottom navigation view
|
2023-04-26 19:49:29 +02:00 |
|
denizk0461
|
450ce92dca
|
Fixed ScheduleUpdateSheet.kt not updating and deleting events... somehow. Also implemented cheat codes hehe
|
2023-04-26 18:36:32 +02:00 |
|
denizk0461
|
d80e85fdbe
|
Migrated the project to AGP 8.0 / JVM 17
|
2023-04-26 11:00:56 +02:00 |
|
denizk0461
|
d0819553bc
|
Implemented licences dialogue in the settings; fully restored highlighting event functionality
|
2023-04-26 10:21:16 +02:00 |
|
denizk0461
|
ced111d93d
|
Added a time stamp to development builds in the settings' app version section
|
2023-04-25 21:57:47 +02:00 |
|
denizk0461
|
65114264c4
|
Added opening hours and a button for the user to view them, but the formatting sucks
|
2023-04-25 16:55:17 +02:00 |
|
denizk0461
|
6b1d77dfb3
|
Implemented functionality to switch canteens. UI for this is not fully implemented.
|
2023-04-25 15:38:30 +02:00 |
|
denizk0461
|
840c8f1db7
|
Implemented snackbar telling the user that an error has occurred when fetching their schedule through FetcherActivity.kt. Also made some slight additions to the documentation
|
2023-04-25 12:02:25 +02:00 |
|
denizk0461
|
96862497e4
|
Finished style for schedule update bottom sheet (I think); implemented time picker, TODO: warn user if time span is invalid (start > end)
|
2023-04-25 10:24:15 +02:00 |
|
denizk0461
|
9b6e267cb0
|
Started implementation of event update sheet
|
2023-04-24 15:43:42 +02:00 |
|
denizk0461
|
a53232a814
|
Added information on data collection as well as an opt-in toggle, which is not yet implemented
|
2023-04-24 13:08:03 +02:00 |
|
denizk0461
|
b938352c53
|
Added further information to be shown in AllergenSheet.kt
|
2023-04-24 11:21:52 +02:00 |
|
denizk0461
|
6f5df7dd55
|
Fixed allergen duplicates being stored in the database and shown to the user multiple times
|
2023-04-24 10:47:34 +02:00 |
|
denizk0461
|
d654ba8a03
|
Implemented user setting for displaying allergens next to an offer
|
2023-04-23 22:06:29 +02:00 |
|
denizk0461
|
8d6a15c4d5
|
Added colour to StudIPEvent.kt to implement at a later date in an effort to prepare the app for release without needing to migrate (= nuke) the database once the functionality will be implemented
|
2023-04-23 21:40:04 +02:00 |
|
denizk0461
|
ca89e68a91
|
Implemented allergen functionality by showing the user a bottom sheet
|
2023-04-23 20:33:17 +02:00 |
|
denizk0461
|
b957172721
|
Transitioned from a fairly custom solution to using a colour palette generated by the Material Theme Builder to simplify colour management. Also began work on a bottom sheet for displaying allergens and additives in canteen offers.
|
2023-04-23 17:13:48 +02:00 |
|