├── app
├── .gitignore
├── src
│ ├── main
│ │ ├── res
│ │ │ ├── drawable
│ │ │ │ ├── local.png
│ │ │ │ ├── airport.png
│ │ │ │ ├── homecard1.png
│ │ │ │ ├── homecard2.png
│ │ │ │ ├── homecard3.png
│ │ │ │ ├── homecard4.png
│ │ │ │ ├── img_paytm.png
│ │ │ │ ├── offer_tag.png
│ │ │ │ ├── otp_frame.png
│ │ │ │ ├── seat_info.png
│ │ │ │ ├── track_bus.png
│ │ │ │ ├── bus_banner.png
│ │ │ │ ├── img_amazon.png
│ │ │ │ ├── img_google.png
│ │ │ │ ├── login_frame.png
│ │ │ │ ├── outstation.png
│ │ │ │ ├── rating_img.jpg
│ │ │ │ ├── bank_of_baroda.png
│ │ │ │ ├── easy_booking.png
│ │ │ │ ├── easy_steps_1.png
│ │ │ │ ├── easy_steps_2.png
│ │ │ │ ├── easy_steps_3.png
│ │ │ │ ├── homepage_cards.png
│ │ │ │ ├── img_bhim_upi.png
│ │ │ │ ├── img_facebook.png
│ │ │ │ ├── img_google_pay.png
│ │ │ │ ├── img_phone_pay.png
│ │ │ │ ├── img_whatsapp.png
│ │ │ │ ├── manage_trips.png
│ │ │ │ ├── offer_cards_1.png
│ │ │ │ ├── offer_cards_2.png
│ │ │ │ ├── offer_cards_3.png
│ │ │ │ ├── select_package.png
│ │ │ │ ├── show_bus_img.png
│ │ │ │ ├── sign_up_frame.png
│ │ │ │ ├── yesteraday_img.png
│ │ │ │ ├── you_are_safe.png
│ │ │ │ ├── country_language.jpg
│ │ │ │ ├── quoation_card_1.png
│ │ │ │ ├── quoation_card_2.png
│ │ │ │ ├── quoation_card_3.png
│ │ │ │ ├── select_boarding.png
│ │ │ │ ├── vehicle_types_1.png
│ │ │ │ ├── vehicle_types_2.png
│ │ │ │ ├── vehicle_types_3.png
│ │ │ │ ├── we_need_contact.png
│ │ │ │ ├── quote_share_dialog.png
│ │ │ │ ├── redbuslogo_splash.jpg
│ │ │ │ ├── account_profile_picture.png
│ │ │ │ ├── img_passenger_info_card.png
│ │ │ │ ├── red_btn_rounded_bg.xml
│ │ │ │ ├── phone_pay_background.xml
│ │ │ │ ├── tab_pager_selector.xml
│ │ │ │ ├── bottom_sheet_rounded.xml
│ │ │ │ ├── ic_next_arrow.xml
│ │ │ │ ├── white_btn_red_stroke_rounded_bg.xml
│ │ │ │ ├── otp_box.xml
│ │ │ │ ├── selector_box.xml
│ │ │ │ ├── rectangle_border.xml
│ │ │ │ ├── selected_pager_dot.xml
│ │ │ │ ├── default_pager_dot.xml
│ │ │ │ ├── ic_drawer_bottom_widget_grey.xml
│ │ │ │ ├── ic_dropdown_icon.xml
│ │ │ │ ├── ic_rectangle.xml
│ │ │ │ ├── blue_rectangleborder.xml
│ │ │ │ ├── ic_dropdown.xml
│ │ │ │ ├── ic_popular_cities.xml
│ │ │ │ ├── ic_bus_layout_border.xml
│ │ │ │ ├── ic_more_vert.xml
│ │ │ │ ├── ic_radio_button.xml
│ │ │ │ ├── ic_facebook.xml
│ │ │ │ ├── ic_close_rounded.xml
│ │ │ │ ├── ic_arrow_next.xml
│ │ │ │ ├── forward_arrow.xml
│ │ │ │ ├── ic_back_arrow_grey.xml
│ │ │ │ ├── ic_back_arrow_white.xml
│ │ │ │ ├── ic_packeges.xml
│ │ │ │ ├── ic_mail.xml
│ │ │ │ ├── ic_clock_icon.xml
│ │ │ │ ├── ic_add_with_border.xml
│ │ │ │ ├── ic_interchange_destination.xml
│ │ │ │ ├── ic_frame_bottom_drawer.xml
│ │ │ │ ├── ic_card_credit.xml
│ │ │ │ ├── ic_home.xml
│ │ │ │ ├── ic_route_arrow.xml
│ │ │ │ ├── ic_banking.xml
│ │ │ │ ├── ic_wallet_black.xml
│ │ │ │ ├── ic_my_account.xml
│ │ │ │ ├── ic_back_button.xml
│ │ │ │ ├── ic_tick_logo.xml
│ │ │ │ ├── ic_seat_available.xml
│ │ │ │ ├── ic_seat_booked.xml
│ │ │ │ ├── ic_seat_selected.xml
│ │ │ │ ├── ic_seat_female_available.xml
│ │ │ │ ├── ic_seat_female_booked.xml
│ │ │ │ ├── ic_recent_search.xml
│ │ │ │ ├── ic_google.xml
│ │ │ │ ├── ic_language.xml
│ │ │ │ ├── ic_safety.xml
│ │ │ │ ├── ic_percentage.xml
│ │ │ │ ├── ic_my_booking.xml
│ │ │ │ ├── ic_info_circle.xml
│ │ │ │ ├── ic_phone.xml
│ │ │ │ ├── ic_call_icon.xml
│ │ │ │ ├── ic_wallet.xml
│ │ │ │ ├── ic_steering_wheel.xml
│ │ │ │ ├── ic_offer.xml
│ │ │ │ ├── ic_technical_issue.xml
│ │ │ │ ├── travel_img.xml
│ │ │ │ ├── ic_bus.xml
│ │ │ │ ├── ic_passengers.xml
│ │ │ │ ├── ic_referral_icon.xml
│ │ │ │ ├── ic_support.xml
│ │ │ │ ├── ic_rewards.xml
│ │ │ │ └── ic_help.xml
│ │ │ ├── raw
│ │ │ │ └── payment_success.mp4
│ │ │ ├── mipmap-hdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ ├── mipmap-mdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ ├── mipmap-xhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ ├── mipmap-xxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ ├── mipmap-xxxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ ├── values
│ │ │ │ ├── preloaded_fonts.xml
│ │ │ │ ├── style.xml
│ │ │ │ ├── themes.xml
│ │ │ │ ├── strings.xml
│ │ │ │ └── colors.xml
│ │ │ ├── mipmap-anydpi-v26
│ │ │ │ ├── ic_launcher.xml
│ │ │ │ └── ic_launcher_round.xml
│ │ │ ├── font
│ │ │ │ ├── montserrat.xml
│ │ │ │ └── montserrat_bold.xml
│ │ │ ├── layout
│ │ │ │ ├── onboarding_custom_layout.xml
│ │ │ │ ├── activity_bus_booking.xml
│ │ │ │ ├── activity_on_boarding.xml
│ │ │ │ ├── bus_seat_item_layout.xml
│ │ │ │ ├── activity_bus_hire.xml
│ │ │ │ ├── activity_main.xml
│ │ │ │ ├── activity_home.xml
│ │ │ │ ├── seat_info_layout.xml
│ │ │ │ ├── activity_splash_screen.xml
│ │ │ │ ├── cities_item_layout.xml
│ │ │ │ ├── fragment_r_pool_booking_cancelled.xml
│ │ │ │ ├── fragment_r_pool_booking_completed.xml
│ │ │ │ ├── fragment_red_bus_booking_cancelled.xml
│ │ │ │ ├── fragment_red_bus_booking_completed.xml
│ │ │ │ ├── fragment_bus_hire_booking_cancelled.xml
│ │ │ │ ├── fragment_bus_hire_booking_completed.xml
│ │ │ │ ├── activity_payment_success.xml
│ │ │ │ ├── fragment_r_pool_my_booking.xml
│ │ │ │ ├── fragment_red_bus_my_booking.xml
│ │ │ │ ├── fragment_bus_hire_my_booking.xml
│ │ │ │ └── fragment_my_bookings.xml
│ │ │ ├── menu
│ │ │ │ └── bottom_menu.xml
│ │ │ ├── values-night
│ │ │ │ └── themes.xml
│ │ │ ├── drawable-v24
│ │ │ │ └── ic_launcher_foreground.xml
│ │ │ └── navigation
│ │ │ │ └── nav_graph_busbooking.xml
│ │ ├── ic_launcher-playstore.png
│ │ ├── java
│ │ │ └── com
│ │ │ │ └── example
│ │ │ │ └── travelbus
│ │ │ │ ├── repository
│ │ │ │ └── TravelRepo.kt
│ │ │ │ ├── views
│ │ │ │ └── adapter
│ │ │ │ │ ├── adapters
│ │ │ │ │ ├── OnBardingTabClicked.kt
│ │ │ │ │ ├── SeatClickedListener.kt
│ │ │ │ │ ├── OnBusItemClickListener.kt
│ │ │ │ │ ├── BookingListAdapter.kt
│ │ │ │ │ ├── CityListAdapter.kt
│ │ │ │ │ ├── BusSeatAdapter.kt
│ │ │ │ │ ├── CityListViewHolder.kt
│ │ │ │ │ ├── BoardingListAdapter.kt
│ │ │ │ │ ├── BookingListViewHolder.kt
│ │ │ │ │ ├── RPoolBookingPagerAdapter.kt
│ │ │ │ │ ├── RedBusBookingPagerAdapter.kt
│ │ │ │ │ ├── BusHireBookingPagerAdapter.kt
│ │ │ │ │ ├── SheetSeatInfoAdapter.kt
│ │ │ │ │ ├── BoardingListViewHolder.kt
│ │ │ │ │ ├── MyBookingPagerAdapter.kt
│ │ │ │ │ ├── BottomSheetUpiAdapter.kt
│ │ │ │ │ ├── SheetSeatInfo.kt
│ │ │ │ │ ├── BottomSheetPhonePay.kt
│ │ │ │ │ ├── BoardingDropingAdapter.kt
│ │ │ │ │ ├── OnBoardingFragmentAdapter.kt
│ │ │ │ │ ├── BusAdapter.kt
│ │ │ │ │ └── BusSeatViewHolder.kt
│ │ │ │ │ ├── TravelBusApp.kt
│ │ │ │ │ ├── base
│ │ │ │ │ ├── BaseViewHolder.kt
│ │ │ │ │ ├── BaseAdapter.kt
│ │ │ │ │ └── BaseActivity.kt
│ │ │ │ │ ├── fragments
│ │ │ │ │ ├── HelpFragment.kt
│ │ │ │ │ ├── MyAccountFragment.kt
│ │ │ │ │ ├── mybookingsfragments
│ │ │ │ │ │ ├── RPoolBookingCancelledFragment.kt
│ │ │ │ │ │ ├── RPoolBookingCompletedFragment.kt
│ │ │ │ │ │ ├── RedBusBookingCancelledFragment.kt
│ │ │ │ │ │ ├── BusHireBookingCancelledFragment.kt
│ │ │ │ │ │ ├── BusHireBookingCompletedFragment.kt
│ │ │ │ │ │ ├── RedBusMyBookingFragment.kt
│ │ │ │ │ │ ├── BusHireMyBookingFragment.kt
│ │ │ │ │ │ ├── RPoolMyBookingFragment.kt
│ │ │ │ │ │ └── RedBusBookingCompletedFragment.kt
│ │ │ │ │ ├── Country_LanguageFragment.kt
│ │ │ │ │ ├── bus_hire
│ │ │ │ │ │ ├── BusHireWelcomeFragment.kt
│ │ │ │ │ │ ├── FillContactDetailFragment.kt
│ │ │ │ │ │ ├── BusQuotationsFragment.kt
│ │ │ │ │ │ ├── SelectJourneyTypeFragment.kt
│ │ │ │ │ │ └── BusHireDetailFragment.kt
│ │ │ │ │ ├── PaymentFragment.kt
│ │ │ │ │ ├── MyBookingsFragment.kt
│ │ │ │ │ ├── LoginFragment.kt
│ │ │ │ │ ├── BoardingDroppingFragment.kt
│ │ │ │ │ ├── SignUpFragment.kt
│ │ │ │ │ └── OnBoardingMainFragment.kt
│ │ │ │ │ └── activities
│ │ │ │ │ ├── MainActivity.kt
│ │ │ │ │ ├── OnBoardingActivity.kt
│ │ │ │ │ ├── BusBookingActivity.kt
│ │ │ │ │ ├── BusHireActivity.kt
│ │ │ │ │ ├── PaymentSuccessActivity.kt
│ │ │ │ │ └── SplashScreenActivity.kt
│ │ │ │ ├── models
│ │ │ │ └── local
│ │ │ │ │ ├── Seats.kt
│ │ │ │ │ ├── Users.kt
│ │ │ │ │ ├── BoardingDropping.kt
│ │ │ │ │ ├── BookingDetails.kt
│ │ │ │ │ └── Buses.kt
│ │ │ │ └── viewmodel
│ │ │ │ ├── TravelViewModel.kt
│ │ │ │ └── TravelViewModelFactory.kt
│ │ └── AndroidManifest.xml
│ ├── test
│ │ └── java
│ │ │ └── com
│ │ │ └── example
│ │ │ └── travelbus
│ │ │ └── ExampleUnitTest.kt
│ └── androidTest
│ │ └── java
│ │ └── com
│ │ └── example
│ │ └── travelbus
│ │ └── ExampleInstrumentedTest.kt
├── proguard-rules.pro
└── google-services.json
├── .idea
├── .gitignore
├── compiler.xml
├── vcs.xml
├── deploymentTargetDropDown.xml
└── gradle.xml
├── gradle
└── wrapper
│ ├── gradle-wrapper.jar
│ └── gradle-wrapper.properties
├── .gitignore
├── settings.gradle
└── gradle.properties
/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 |
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/app/src/main/res/drawable/local.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/local.png
--------------------------------------------------------------------------------
/app/src/main/ic_launcher-playstore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/ic_launcher-playstore.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/airport.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/airport.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/homecard1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/homecard1.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/homecard2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/homecard2.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/homecard3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/homecard3.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/homecard4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/homecard4.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_paytm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_paytm.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/offer_tag.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/offer_tag.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/otp_frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/otp_frame.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/seat_info.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/seat_info.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/track_bus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/track_bus.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bus_banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/bus_banner.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_amazon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_amazon.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_google.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_google.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/login_frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/login_frame.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/outstation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/outstation.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/rating_img.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/rating_img.jpg
--------------------------------------------------------------------------------
/app/src/main/res/raw/payment_success.mp4:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/raw/payment_success.mp4
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bank_of_baroda.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/bank_of_baroda.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/easy_booking.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/easy_booking.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/easy_steps_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/easy_steps_1.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/easy_steps_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/easy_steps_2.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/easy_steps_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/easy_steps_3.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/homepage_cards.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/homepage_cards.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_bhim_upi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_bhim_upi.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_facebook.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_facebook.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_google_pay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_google_pay.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_phone_pay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_phone_pay.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_whatsapp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_whatsapp.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/manage_trips.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/manage_trips.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/offer_cards_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/offer_cards_1.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/offer_cards_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/offer_cards_2.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/offer_cards_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/offer_cards_3.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/select_package.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/select_package.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/show_bus_img.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/show_bus_img.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/sign_up_frame.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/sign_up_frame.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/yesteraday_img.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/yesteraday_img.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/you_are_safe.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/you_are_safe.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/country_language.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/country_language.jpg
--------------------------------------------------------------------------------
/app/src/main/res/drawable/quoation_card_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/quoation_card_1.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/quoation_card_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/quoation_card_2.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/quoation_card_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/quoation_card_3.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/select_boarding.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/select_boarding.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/vehicle_types_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/vehicle_types_1.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/vehicle_types_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/vehicle_types_2.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/vehicle_types_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/vehicle_types_3.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/we_need_contact.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/we_need_contact.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/quote_share_dialog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/quote_share_dialog.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/redbuslogo_splash.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/redbuslogo_splash.jpg
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/account_profile_picture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/account_profile_picture.png
--------------------------------------------------------------------------------
/app/src/main/res/drawable/img_passenger_info_card.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/drawable/img_passenger_info_card.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/AmolPardeshi99/TravelBus/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/repository/TravelRepo.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.repository
2 |
3 | class TravelRepo {
4 |
5 | suspend fun setSplashScreen(){
6 |
7 | }
8 | }
--------------------------------------------------------------------------------
/.idea/compiler.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/OnBardingTabClicked.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | interface OnBardingTabClicked {
4 |
5 | fun onTabClicked()
6 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/SeatClickedListener.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | interface SeatClickedListener {
4 | fun onSeatSelected()
5 | fun onSeatDeselected()
6 | }
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/models/local/Seats.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.models.local
2 |
3 | class Seats(
4 | var available: String= "",
5 | var real_seat:String="",
6 | var seat_no:String="",
7 | var type: String=""
8 | ) {
9 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/red_btn_rounded_bg.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/models/local/Users.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.models.local
2 |
3 | class Users(
4 | var mobileNo:String="",
5 | var userId:String="",
6 | var totalFare:String="",
7 | var totalBookings:String=""
8 | ) {
9 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/TravelBusApp.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter
2 |
3 | import android.app.Application
4 | import dagger.hilt.android.HiltAndroidApp
5 |
6 | @HiltAndroidApp
7 | class TravelBusApp:Application() {
8 |
9 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/phone_pay_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/viewmodel/TravelViewModel.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.viewmodel
2 |
3 | import androidx.lifecycle.ViewModel
4 | import com.example.travelbus.repository.TravelRepo
5 |
6 | class TravelViewModel(val repo: TravelRepo): ViewModel() {
7 |
8 | }
--------------------------------------------------------------------------------
/app/src/main/res/values/preloaded_fonts.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | - @font/montserrat
5 | - @font/montserrat_bold
6 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/OnBusItemClickListener.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import com.example.travelbus.models.local.Buses
4 |
5 | interface OnBusItemClickListener {
6 |
7 | fun onBusClicked(buses: Buses)
8 | }
--------------------------------------------------------------------------------
/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Mon Sep 27 23:24:38 IST 2021
2 | distributionBase=GRADLE_USER_HOME
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip
4 | distributionPath=wrapper/dists
5 | zipStorePath=wrapper/dists
6 | zipStoreBase=GRADLE_USER_HOME
7 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/models/local/BoardingDropping.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.models.local
2 |
3 | class BoardingDropping(
4 | var title:String = "",
5 | var subTitle:String = "",
6 | var time:String= "",
7 | var mobileNo:String=""
8 |
9 | ) {
10 | }
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/caches
5 | /.idea/libraries
6 | /.idea/modules.xml
7 | /.idea/workspace.xml
8 | /.idea/navEditor.xml
9 | /.idea/assetWizardSettings.xml
10 | .DS_Store
11 | /build
12 | /captures
13 | .externalNativeBuild
14 | .cxx
15 | local.properties
16 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/models/local/BookingDetails.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.models.local
2 |
3 | class BookingDetails(
4 | var date:String = "",
5 | var source:String = "",
6 | var destination:String = "",
7 | var distance:String = "",
8 | var payment:String = ""
9 | ) {
10 | }
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/base/BaseViewHolder.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.base
2 |
3 | import android.view.View
4 | import androidx.recyclerview.widget.RecyclerView
5 |
6 | abstract class BaseItemViewHolder(view: View): RecyclerView.ViewHolder(view){
7 | abstract fun setData(data:T)
8 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/tab_pager_selector.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
--------------------------------------------------------------------------------
/settings.gradle:
--------------------------------------------------------------------------------
1 | dependencyResolutionManagement {
2 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
3 | repositories {
4 | google()
5 | mavenCentral()
6 | jcenter() // Warning: this repository is going to shut down soon
7 | }
8 | }
9 | rootProject.name = "TravelBus"
10 | include ':app'
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/bottom_sheet_rounded.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_next_arrow.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/white_btn_red_stroke_rounded_bg.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/font/montserrat.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/HelpFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 |
10 | class HelpFragment : Fragment(R.layout.fragment_help) {
11 |
12 | }
--------------------------------------------------------------------------------
/app/src/main/res/font/montserrat_bold.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/MyAccountFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 |
10 | class MyAccountFragment : Fragment(R.layout.fragment_my_account) {
11 |
12 |
13 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/otp_box.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
12 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/selector_box.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
10 |
13 |
14 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/rectangle_border.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
12 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/selected_pager_dot.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | -
4 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/models/local/Buses.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.models.local
2 |
3 | class Buses(
4 | var id:String="",
5 | var name: String = "",
6 | var description: String = "",
7 | var from: String = "",
8 | var to: String = "",
9 | var seats: ArrayList = ArrayList(),
10 | var price: String = "",
11 | var travellingtime: String = "",
12 | var timing: String = ""
13 | ) {
14 |
15 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/activities/MainActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.activities
2 |
3 | import android.os.Bundle
4 | import com.example.travelbus.R
5 | import com.example.travelbus.views.adapter.base.BaseActivity
6 |
7 | class MainActivity : BaseActivity() {
8 | override fun provideLayoutId(): Int = R.layout.activity_main
9 |
10 | override fun setupView(savedInstanceState: Bundle?) {
11 | }
12 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/default_pager_dot.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 | -
5 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_drawer_bottom_widget_grey.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/test/java/com/example/travelbus/ExampleUnitTest.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus
2 |
3 | import org.junit.Test
4 |
5 | import org.junit.Assert.*
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * See [testing documentation](http://d.android.com/tools/testing).
11 | */
12 | class ExampleUnitTest {
13 | @Test
14 | fun addition_isCorrect() {
15 | assertEquals(4, 2 + 2)
16 | }
17 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/activities/OnBoardingActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.activities
2 |
3 | import android.os.Bundle
4 | import com.example.travelbus.R
5 | import com.example.travelbus.views.adapter.base.BaseActivity
6 |
7 | class OnBoardingActivity : BaseActivity() {
8 | override fun provideLayoutId(): Int = R.layout.activity_on_boarding
9 |
10 | override fun setupView(savedInstanceState: Bundle?) {
11 | }
12 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/viewmodel/TravelViewModelFactory.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.viewmodel
2 |
3 | import androidx.lifecycle.ViewModel
4 | import androidx.lifecycle.ViewModelProvider
5 | import com.example.travelbus.repository.TravelRepo
6 |
7 | class TravelViewModelFactory(val repo: TravelRepo):ViewModelProvider.Factory {
8 |
9 | override fun create(modelClass: Class): T {
10 | return TravelViewModel(repo) as T
11 | }
12 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_dropdown_icon.xml:
--------------------------------------------------------------------------------
1 |
3 |
7 |
8 |
--------------------------------------------------------------------------------
/app/src/main/res/values/style.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
7 |
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/activities/BusBookingActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.activities
2 |
3 | import android.os.Bundle
4 | import com.example.travelbus.R
5 | import com.example.travelbus.views.adapter.base.BaseActivity
6 |
7 | class BusBookingActivity : BaseActivity() {
8 |
9 | override fun setupView(savedInstanceState: Bundle?) {
10 | }
11 |
12 | override fun provideLayoutId(): Int = R.layout.activity_bus_booking
13 |
14 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_rectangle.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/RPoolBookingCancelledFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 |
10 | class RPoolBookingCancelledFragment : Fragment(R.layout.fragment_r_pool_booking_cancelled) {
11 |
12 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/blue_rectangleborder.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
9 |
12 |
15 |
17 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/RPoolBookingCompletedFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 |
10 |
11 | class RPoolBookingCompletedFragment : Fragment(R.layout.fragment_r_pool_booking_completed) {
12 |
13 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/RedBusBookingCancelledFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 |
10 |
11 | class RedBusBookingCancelledFragment : Fragment(R.layout.fragment_red_bus_booking_cancelled) {
12 |
13 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/BusHireBookingCancelledFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 |
10 |
11 | class BusHireBookingCancelledFragment : Fragment(R.layout.fragment_bus_hire_booking_cancelled) {
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/BusHireBookingCompletedFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 |
10 |
11 | class BusHireBookingCompletedFragment : Fragment(R.layout.fragment_bus_hire_booking_completed) {
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_dropdown.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_popular_cities.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_bus_layout_border.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
12 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/base/BaseAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.base
2 |
3 | import androidx.recyclerview.widget.RecyclerView
4 |
5 | //Generic class -> we can pass data type as a variable
6 | abstract class BaseAdapter>(private val dataList:ArrayList) : RecyclerView.Adapter() {
7 |
8 | override fun getItemCount(): Int = dataList.size
9 |
10 | override fun onBindViewHolder(holder: VH, position: Int) {
11 | holder.setData(data = dataList[position])
12 | }
13 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_more_vert.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_radio_button.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/.idea/deploymentTargetDropDown.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/base/BaseActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.base
2 |
3 | import android.os.Bundle
4 | import android.os.PersistableBundle
5 | import androidx.appcompat.app.AppCompatActivity
6 |
7 | abstract class BaseActivity : AppCompatActivity() {
8 |
9 | override fun onCreate(savedInstanceState: Bundle?) {
10 | super.onCreate(savedInstanceState)
11 | setContentView(provideLayoutId())
12 | setupView(savedInstanceState)
13 | }
14 |
15 | protected abstract fun setupView(savedInstanceState: Bundle?)
16 |
17 | protected abstract fun provideLayoutId(): Int
18 | }
--------------------------------------------------------------------------------
/app/src/main/res/layout/onboarding_custom_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
14 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_bus_booking.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_on_boarding.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/bus_seat_item_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_bus_hire.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/activities/BusHireActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.activities
2 |
3 | import androidx.appcompat.app.AppCompatActivity
4 | import android.os.Bundle
5 | import com.example.travelbus.R
6 | import com.example.travelbus.views.adapter.base.BaseActivity
7 | import com.example.travelbus.views.adapter.fragments.bus_hire.BusHireWelcomeFragment
8 |
9 | class BusHireActivity : BaseActivity() {
10 | override fun setupView(savedInstanceState: Bundle?) {
11 | supportFragmentManager.beginTransaction().replace(R.id.busHireContainer, BusHireWelcomeFragment()).commit()
12 | }
13 |
14 | override fun provideLayoutId(): Int = R.layout.activity_bus_hire
15 |
16 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_facebook.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/menu/bottom_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_close_rounded.xml:
--------------------------------------------------------------------------------
1 |
6 |
12 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BookingListAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.LayoutInflater
4 | import android.view.ViewGroup
5 | import com.example.travelbus.R
6 | import com.example.travelbus.models.local.BookingDetails
7 | import com.example.travelbus.views.adapter.base.BaseAdapter
8 |
9 | class BookingListAdapter (val bookingList: ArrayList) : BaseAdapter (bookingList){
10 |
11 | override fun onCreateViewHolder(parent: ViewGroup, viewType: Int) : BookingListViewHolder =
12 | BookingListViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.booking_item_layout, parent, false))
13 |
14 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_arrow_next.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/CityListAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.LayoutInflater
4 | import android.view.ViewGroup
5 | import com.example.travelbus.R
6 | import com.example.travelbus.views.adapter.base.BaseAdapter
7 |
8 | class CityListAdapter(private val cityList:ArrayList, val clickListener: PlacesAdapter.ClickListener, val sourceDestinationFlag : Int) : BaseAdapter(cityList) {
9 |
10 | override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CityListViewHolder =
11 | CityListViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.cities_item_layout, parent, false), clickListener, sourceDestinationFlag)
12 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/forward_arrow.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_back_arrow_grey.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_back_arrow_white.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BusSeatAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.LayoutInflater
4 | import android.view.ViewGroup
5 | import com.example.travelbus.R
6 | import com.example.travelbus.models.local.Seats
7 | import com.example.travelbus.views.adapter.base.BaseAdapter
8 |
9 | class BusSeatAdapter (val busSeats: ArrayList, val seatClickedListener: SeatClickedListener): BaseAdapter(busSeats) {
10 |
11 | override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BusSeatViewHolder =
12 | BusSeatViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.bus_seat_item_layout, parent, false), seatClickedListener)
13 | }
14 |
15 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_packeges.xml:
--------------------------------------------------------------------------------
1 |
6 |
10 |
11 |
--------------------------------------------------------------------------------
/.idea/gradle.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
19 |
20 |
--------------------------------------------------------------------------------
/app/src/androidTest/java/com/example/travelbus/ExampleInstrumentedTest.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus
2 |
3 | import androidx.test.platform.app.InstrumentationRegistry
4 | import androidx.test.ext.junit.runners.AndroidJUnit4
5 |
6 | import org.junit.Test
7 | import org.junit.runner.RunWith
8 |
9 | import org.junit.Assert.*
10 |
11 | /**
12 | * Instrumented test, which will execute on an Android device.
13 | *
14 | * See [testing documentation](http://d.android.com/tools/testing).
15 | */
16 | @RunWith(AndroidJUnit4::class)
17 | class ExampleInstrumentedTest {
18 | @Test
19 | fun useAppContext() {
20 | // Context of the app under test.
21 | val appContext = InstrumentationRegistry.getInstrumentation().targetContext
22 | assertEquals("com.example.travelbus", appContext.packageName)
23 | }
24 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_mail.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/CityListViewHolder.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.View
4 | import android.widget.TextView
5 | import androidx.constraintlayout.widget.ConstraintLayout
6 | import com.example.travelbus.R
7 | import com.example.travelbus.views.adapter.base.BaseItemViewHolder
8 |
9 | class CityListViewHolder(val view: View, val clickListener: PlacesAdapter.ClickListener, val sourceDestinationFlag : Int): BaseItemViewHolder(view) {
10 |
11 | override fun setData(data: String) {
12 | view.findViewById(R.id.tvCity).text = data
13 |
14 | view.findViewById(R.id.itemCity).setOnClickListener {
15 | clickListener.cityItemClicked(data, sourceDestinationFlag)
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_clock_icon.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_add_with_border.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_interchange_destination.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BoardingListAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.LayoutInflater
4 | import android.view.ViewGroup
5 | import com.example.travelbus.R
6 | import com.example.travelbus.views.adapter.base.BaseAdapter
7 | import com.example.travelbus.views.adapter.fragments.BoardingPoint
8 |
9 | class BoardingListAdapter (val boardingList: ArrayList, val clickListener: PlacesAdapter.ClickListener, val sourceDestinationFlag : Int): BaseAdapter(boardingList) {
10 |
11 | override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BoardingListViewHolder =
12 | BoardingListViewHolder(LayoutInflater.from(parent.context).inflate(R.layout.boarding_point_item_layout, parent, false), clickListener, sourceDestinationFlag)
13 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_frame_bottom_drawer.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
13 |
14 |
19 |
20 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_card_credit.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_home.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/res/values/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/res/values-night/themes.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BookingListViewHolder.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.View
4 | import android.widget.TextView
5 | import com.example.travelbus.R
6 | import com.example.travelbus.models.local.BookingDetails
7 | import com.example.travelbus.views.adapter.base.BaseItemViewHolder
8 |
9 | class BookingListViewHolder(val view: View): BaseItemViewHolder(view) {
10 |
11 | override fun setData(data: BookingDetails) {
12 | view.findViewById(R.id.tvBookingDate).text = data.date
13 | view.findViewById(R.id.tvSource).text = data.source
14 | view.findViewById(R.id.tvDestination).text = data.destination
15 | view.findViewById(R.id.tvDistance).text = data.distance
16 | view.findViewById(R.id.tvPaymentDetail).text = data.payment
17 | }
18 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_route_arrow.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/RPoolBookingPagerAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import androidx.fragment.app.Fragment
4 | import androidx.fragment.app.FragmentManager
5 | import androidx.lifecycle.Lifecycle
6 | import androidx.viewpager2.adapter.FragmentStateAdapter
7 | import com.example.travelbus.views.adapter.fragments.mybookingsfragments.*
8 |
9 | class RPoolBookingPagerAdapter(fragmentManager: FragmentManager, lifecycle: Lifecycle) : FragmentStateAdapter(fragmentManager, lifecycle) {
10 |
11 | override fun createFragment(position: Int): Fragment {
12 | when (position) {
13 | 0 -> return RPoolBookingCompletedFragment()
14 | 1 -> return RPoolBookingCancelledFragment()
15 | }
16 | return RPoolBookingCompletedFragment()
17 | }
18 |
19 | override fun getItemCount(): Int {
20 | return 2
21 | }
22 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/RedBusBookingPagerAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import androidx.fragment.app.Fragment
4 | import androidx.fragment.app.FragmentManager
5 | import androidx.lifecycle.Lifecycle
6 | import androidx.viewpager2.adapter.FragmentStateAdapter
7 | import com.example.travelbus.views.adapter.fragments.mybookingsfragments.*
8 |
9 | class RedBusBookingPagerAdapter(fragmentManager: FragmentManager, lifecycle: Lifecycle) : FragmentStateAdapter(fragmentManager, lifecycle) {
10 |
11 | override fun createFragment(position: Int): Fragment {
12 | when (position) {
13 | 0 -> return RedBusBookingCompletedFragment()
14 | 1 -> return RedBusBookingCancelledFragment()
15 | }
16 | return RedBusMyBookingFragment()
17 | }
18 |
19 | override fun getItemCount(): Int {
20 | return 2
21 | }
22 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BusHireBookingPagerAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import androidx.fragment.app.Fragment
4 | import androidx.fragment.app.FragmentManager
5 | import androidx.lifecycle.Lifecycle
6 | import androidx.viewpager2.adapter.FragmentStateAdapter
7 | import com.example.travelbus.views.adapter.fragments.mybookingsfragments.*
8 |
9 | class BusHireBookingPagerAdapter(fragmentManager: FragmentManager, lifecycle: Lifecycle) : FragmentStateAdapter(fragmentManager, lifecycle) {
10 |
11 | override fun createFragment(position: Int): Fragment {
12 | when (position) {
13 | 0 -> return BusHireBookingCompletedFragment()
14 | 1 -> return BusHireBookingCancelledFragment()
15 | }
16 | return BusHireBookingCompletedFragment()
17 | }
18 |
19 | override fun getItemCount(): Int {
20 | return 2
21 | }
22 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/Country_LanguageFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.os.Bundle
4 | import android.view.View
5 | import androidx.fragment.app.Fragment
6 | import androidx.navigation.NavController
7 | import androidx.navigation.Navigation
8 | import com.example.travelbus.R
9 | import kotlinx.android.synthetic.main.fragment_country__language.*
10 |
11 | class Country_LanguageFragment : Fragment(R.layout.fragment_country__language) {
12 | lateinit var navController: NavController
13 |
14 |
15 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
16 | super.onViewCreated(view, savedInstanceState)
17 | navController = Navigation.findNavController(view)
18 |
19 | btnContinue.setOnClickListener {
20 | navController.navigate(R.id.action_country_LanguageFragment_to_onBoardingMainFragment)
21 | }
22 | }
23 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_banking.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_wallet_black.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_my_account.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
21 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/SheetSeatInfoAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.os.Bundle
4 | import android.view.LayoutInflater
5 | import android.view.View
6 | import android.view.ViewGroup
7 | import android.widget.Toast
8 | import androidx.fragment.app.DialogFragment
9 | import com.example.travelbus.R
10 | import com.google.android.material.bottomsheet.BottomSheetDialogFragment
11 | import kotlinx.android.synthetic.main.bottom_upi_layout.view.*
12 |
13 | class SheetSeatInfoAdapter: DialogFragment() {
14 |
15 |
16 | override fun onCreateView(
17 | inflater: LayoutInflater,
18 | container: ViewGroup?,
19 | savedInstanceState: Bundle?
20 | ): View? {
21 | val view1 = inflater.inflate(R.layout.seat_info_layout, container, false)
22 |
23 | return view1;
24 | }
25 |
26 | override fun getTheme(): Int {
27 | return R.style.AppBottomSheetDialogTheme
28 | }
29 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/bus_hire/BusHireWelcomeFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.bus_hire
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.View
6 | import com.example.travelbus.R
7 | import kotlinx.android.synthetic.main.fragment_bus_hire_welcome.*
8 |
9 | class BusHireWelcomeFragment : Fragment(R.layout.fragment_bus_hire_welcome) {
10 |
11 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
12 | super.onViewCreated(view, savedInstanceState)
13 |
14 | btnHireVehicle1.setOnClickListener {
15 | activity?.supportFragmentManager?.beginTransaction()?.replace(R.id.busHireContainer, SelectJourneyTypeFragment())?.commit()
16 | }
17 | btnHireVehicle2.setOnClickListener {
18 | activity?.supportFragmentManager?.beginTransaction()?.replace(R.id.busHireContainer, SelectJourneyTypeFragment())?.commit()
19 |
20 | }
21 |
22 | }
23 |
24 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BoardingListViewHolder.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.View
4 | import android.widget.TextView
5 | import androidx.constraintlayout.widget.ConstraintLayout
6 | import com.example.travelbus.R
7 | import com.example.travelbus.views.adapter.base.BaseItemViewHolder
8 | import com.example.travelbus.views.adapter.fragments.BoardingPoint
9 |
10 | class BoardingListViewHolder(val view: View, val clickListener: PlacesAdapter.ClickListener, val sourceDestinationFlag : Int): BaseItemViewHolder(view) {
11 |
12 |
13 | override fun setData(data: BoardingPoint) {
14 | view.findViewById(R.id.tvBoardingPoint).text = data.area
15 | view.findViewById(R.id.tvBoardingCity).text = data.address
16 |
17 | view.findViewById(R.id.itemBoarding).setOnClickListener {
18 | clickListener.boardingItemClicked(data, sourceDestinationFlag)
19 | }
20 | }
21 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/bus_hire/FillContactDetailFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.bus_hire
2 |
3 | import android.os.Bundle
4 | import android.view.View
5 | import androidx.fragment.app.Fragment
6 | import androidx.navigation.NavController
7 | import androidx.navigation.Navigation
8 | import com.example.travelbus.R
9 | import kotlinx.android.synthetic.main.fragment_bus_hire_detail.*
10 | import kotlinx.android.synthetic.main.fragment_fill_contact_detail.*
11 |
12 | class FillContactDetailFragment : Fragment(R.layout.fragment_fill_contact_detail) {
13 |
14 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
15 | super.onViewCreated(view, savedInstanceState)
16 |
17 | btnViewVehicle.setOnClickListener {
18 | activity?.supportFragmentManager?.beginTransaction()
19 | ?.replace(com.example.travelbus.R.id.busHireContainer, BusQuotationsFragment())
20 | ?.commit()
21 | }
22 |
23 | }
24 |
25 | }
--------------------------------------------------------------------------------
/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | TravelBus
3 |
4 | Hello blank fragment
5 | AIzaSyDCPcEo4_Oc415ssCIun92qoIzhZSpzUI8
6 | India
7 | Language
8 | Country
9 | Login Using Otp
10 | By signing in, you agree to our Terms and Conditions and Privacy Policy
11 | Log In
12 | Mobile Number
13 | Login
14 | Relax, we will automatically validate OTP
15 | Resend OTP
16 | Confirm
17 | Pune to Mumbai
18 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_home.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
16 |
17 |
25 |
26 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/MyBookingPagerAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import androidx.fragment.app.Fragment
4 | import androidx.fragment.app.FragmentManager
5 | import androidx.lifecycle.Lifecycle
6 | import androidx.viewpager2.adapter.FragmentStateAdapter
7 | import com.example.travelbus.views.adapter.fragments.mybookingsfragments.BusHireMyBookingFragment
8 | import com.example.travelbus.views.adapter.fragments.mybookingsfragments.RPoolMyBookingFragment
9 | import com.example.travelbus.views.adapter.fragments.mybookingsfragments.RedBusMyBookingFragment
10 |
11 | class MyBookingPagerAdapter(fragmentManager: FragmentManager, lifecycle: Lifecycle) : FragmentStateAdapter(fragmentManager, lifecycle) {
12 |
13 | override fun createFragment(position: Int): Fragment {
14 | when (position) {
15 | 0 -> return RedBusMyBookingFragment()
16 | 1 -> return RPoolMyBookingFragment()
17 | 2 -> return BusHireMyBookingFragment()
18 | }
19 | return RedBusMyBookingFragment()
20 | }
21 |
22 | override fun getItemCount(): Int {
23 | return 3
24 | }
25 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BottomSheetUpiAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.os.Bundle
4 | import android.view.LayoutInflater
5 | import android.view.View
6 | import android.view.ViewGroup
7 | import android.widget.Toast
8 | import com.example.travelbus.R
9 | import com.google.android.material.bottomsheet.BottomSheetDialogFragment
10 | import kotlinx.android.synthetic.main.bottom_upi_layout.view.*
11 |
12 | class BottomSheetUpiAdapter: BottomSheetDialogFragment() {
13 |
14 |
15 | override fun onCreateView(
16 | inflater: LayoutInflater,
17 | container: ViewGroup?,
18 | savedInstanceState: Bundle?
19 | ): View? {
20 | val view1 = inflater.inflate(R.layout.bottom_upi_layout, container, false)
21 |
22 | view1.btnPay.setOnClickListener {
23 | val bottomSheet = BottomSheetPhonePay()
24 | activity?.supportFragmentManager?.let { it1 -> bottomSheet.show(it1, "ModalBottomSheet") }
25 | dismiss()
26 | }
27 |
28 | return view1;
29 | }
30 |
31 | override fun getTheme(): Int {
32 | return R.style.AppBottomSheetDialogTheme
33 | }
34 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/PaymentFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.content.Context
4 | import android.os.Bundle
5 | import androidx.fragment.app.Fragment
6 | import android.view.LayoutInflater
7 | import android.view.View
8 | import android.view.ViewGroup
9 | import com.example.travelbus.R
10 | import com.example.travelbus.views.adapter.adapters.BottomSheetUpiAdapter
11 | import kotlinx.android.synthetic.main.fragment_payment.*
12 | import com.google.android.material.bottomsheet.BottomSheetDialog
13 | import androidx.fragment.app.FragmentActivity
14 | import androidx.fragment.app.FragmentManager
15 |
16 |
17 | class PaymentFragment : Fragment(R.layout.fragment_payment) {
18 | override fun onAttach(context: Context) {
19 | super.onAttach(context)
20 | }
21 |
22 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
23 | super.onViewCreated(view, savedInstanceState)
24 | cvUpi.setOnClickListener {
25 | val bottomSheet = BottomSheetUpiAdapter()
26 | activity?.supportFragmentManager?.let { it1 -> bottomSheet.show(it1, "ModalBottomSheet") }
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_back_button.xml:
--------------------------------------------------------------------------------
1 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_tick_logo.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #FFBB86FC
4 | #FF6200EE
5 | #FF3700B3
6 | #FF03DAC5
7 | #FF018786
8 | #FF000000
9 | #FFFFFFFF
10 |
11 |
12 | #D74E55
13 | #1133DB
14 | #EEEEEE
15 | #363B3F
16 | #6E7275
17 | #9FA1A3
18 | #FBFBFB
19 |
20 |
21 | #E5E5E5
22 | #F8F4F3
23 | #BFC0C2
24 | #6E7275
25 | #F3C9CB
26 | #363B3F
27 | #FEF096
28 | #FBFBFB
29 |
--------------------------------------------------------------------------------
/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 | # IDE (e.g. Android Studio) users:
3 | # Gradle settings configured through the IDE *will override*
4 | # any settings specified in this file.
5 | # For more details on how to configure your build environment visit
6 | # http://www.gradle.org/docs/current/userguide/build_environment.html
7 | # Specifies the JVM arguments used for the daemon process.
8 | # The setting is particularly useful for tweaking memory settings.
9 | org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
10 | # When configured, Gradle will run in incubating parallel mode.
11 | # This option should only be used with decoupled projects. More details, visit
12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
13 | # org.gradle.parallel=true
14 | # AndroidX package structure to make it clearer which packages are bundled with the
15 | # Android operating system, and which are packaged with your app"s APK
16 | # https://developer.android.com/topic/libraries/support-library/androidx-rn
17 | android.useAndroidX=true
18 | # Automatically convert third-party libraries to use AndroidX
19 | android.enableJetifier=true
20 | # Kotlin code style for this project: "official" or "obsolete":
21 | kotlin.code.style=official
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/bus_hire/BusQuotationsFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.bus_hire
2 |
3 | import android.os.Bundle
4 | import android.view.View
5 | import androidx.fragment.app.Fragment
6 | import com.example.travelbus.R
7 | import kotlinx.android.synthetic.main.fragment_bus_quotations.*
8 |
9 | class BusQuotationsFragment : Fragment(R.layout.fragment_bus_quotations) {
10 |
11 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
12 | super.onViewCreated(view, savedInstanceState)
13 | clickableActions()
14 | }
15 |
16 | private fun clickableActions() {
17 | imageQuote1.setOnClickListener {
18 | imageSelectAppointment.visibility = View.VISIBLE
19 | imageAppointmentSelected.visibility = View.GONE
20 | }
21 |
22 | imageSelectAppointment.setOnClickListener {
23 | imageSelectAppointment.visibility = View.GONE
24 | imageAppointmentSelected.visibility = View.VISIBLE
25 | }
26 |
27 | scrollConstraintLayout.setOnClickListener {
28 | imageSelectAppointment.visibility = View.GONE
29 | imageAppointmentSelected.visibility = View.GONE
30 | }
31 |
32 | }
33 |
34 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/bus_hire/SelectJourneyTypeFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.bus_hire
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.View
6 | import androidx.navigation.NavController
7 | import androidx.navigation.Navigation
8 | import com.example.travelbus.R
9 | import kotlinx.android.synthetic.main.fragment_select_journey_type.*
10 |
11 | class SelectJourneyTypeFragment : Fragment(R.layout.fragment_select_journey_type) {
12 |
13 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
14 | super.onViewCreated(view, savedInstanceState)
15 |
16 | imageOutstaion.setOnClickListener {
17 | activity?.supportFragmentManager?.beginTransaction()?.replace(R.id.busHireContainer, BusHireDetailFragment())?.commit()
18 | }
19 | imageLocal.setOnClickListener {
20 | activity?.supportFragmentManager?.beginTransaction()?.replace(R.id.busHireContainer, BusHireDetailFragment())?.commit()
21 | }
22 | imageAirport.setOnClickListener {
23 | activity?.supportFragmentManager?.beginTransaction()?.replace(R.id.busHireContainer, BusHireDetailFragment())?.commit()
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/app/src/main/res/layout/seat_info_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
18 |
19 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/SheetSeatInfo.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.content.Intent
4 | import android.os.Bundle
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import android.widget.Toast
9 | import androidx.fragment.app.DialogFragment
10 | import androidx.navigation.NavController
11 | import androidx.navigation.Navigation
12 | import com.example.travelbus.R
13 | import com.example.travelbus.views.adapter.activities.PaymentSuccessActivity
14 | import com.google.android.material.bottomsheet.BottomSheetDialogFragment
15 | import kotlinx.android.synthetic.main.bottom_phonepay_layout.view.btnPay
16 |
17 | class SheetSeatInfo : DialogFragment() {
18 |
19 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
20 | super.onViewCreated(view, savedInstanceState)
21 | }
22 |
23 | override fun onCreateView(
24 | inflater: LayoutInflater,
25 | container: ViewGroup?,
26 | savedInstanceState: Bundle?
27 | ): View? {
28 | val view1 = inflater.inflate(R.layout.seat_info_layout, container, false)
29 | return view1;
30 | }
31 |
32 | override fun getTheme(): Int {
33 | return R.style.AppBottomSheetDialogTheme
34 | }
35 |
36 | }
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_splash_screen.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
18 |
19 |
29 |
30 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/activities/PaymentSuccessActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.activities
2 |
3 | import android.content.Intent
4 | import android.net.Uri
5 | import androidx.appcompat.app.AppCompatActivity
6 | import android.os.Bundle
7 | import com.example.travelbus.R
8 | import kotlinx.android.synthetic.main.activity_payment_success.*
9 | import kotlinx.coroutines.CoroutineScope
10 | import kotlinx.coroutines.Dispatchers
11 | import kotlinx.coroutines.delay
12 | import kotlinx.coroutines.launch
13 |
14 | class PaymentSuccessActivity : AppCompatActivity() {
15 | override fun onCreate(savedInstanceState: Bundle?) {
16 | super.onCreate(savedInstanceState)
17 | setContentView(R.layout.activity_payment_success)
18 |
19 | val path = "android.resource://com.example.travelbus/" + R.raw.payment_success
20 | val uri = Uri.parse(path)
21 | videoView.setVideoURI(uri)
22 |
23 | videoView.setOnPreparedListener { mp -> mp.start() }
24 |
25 | videoView.setOnCompletionListener {
26 | CoroutineScope(Dispatchers.Main).launch {
27 | delay(500)
28 | startActivity(Intent(applicationContext, HomeActivity::class.java))
29 | }
30 | }
31 |
32 | tvBack.setOnClickListener {
33 | startActivity(Intent(this, HomeActivity::class.java))
34 | }
35 | }
36 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_seat_available.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
16 |
21 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_seat_booked.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
16 |
21 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_seat_selected.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
16 |
21 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_seat_female_available.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
16 |
21 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_seat_female_booked.xml:
--------------------------------------------------------------------------------
1 |
6 |
11 |
16 |
21 |
26 |
27 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/MyBookingsFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 | import com.example.travelbus.views.adapter.adapters.MyBookingPagerAdapter
10 | import com.google.android.material.tabs.TabLayout
11 | import com.google.android.material.tabs.TabLayoutMediator
12 | import com.google.android.material.tabs.TabLayoutMediator.TabConfigurationStrategy
13 | import kotlinx.android.synthetic.main.fragment_my_bookings.*
14 |
15 | class MyBookingsFragment : Fragment(R.layout.fragment_my_bookings) {
16 |
17 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
18 | super.onViewCreated(view, savedInstanceState)
19 | setAdapter()
20 | }
21 |
22 | private fun setAdapter() {
23 | val pagerAdapter = MyBookingPagerAdapter(requireActivity().supportFragmentManager, lifecycle)
24 | viewPagerBookingType.adapter = pagerAdapter
25 | TabLayoutMediator(tabsMyBooking, viewPagerBookingType) {
26 | tab, position ->
27 | when (position) {
28 | 0 -> tab.text = "redBus"
29 | 1 -> tab.text = "rPool"
30 | 2 -> tab.text = "Bus Hire"
31 | }
32 | }.attach()
33 | }
34 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/RedBusMyBookingFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 | import com.example.travelbus.views.adapter.adapters.MyBookingPagerAdapter
10 | import com.example.travelbus.views.adapter.adapters.RedBusBookingPagerAdapter
11 | import com.google.android.material.tabs.TabLayoutMediator
12 | import kotlinx.android.synthetic.main.fragment_my_bookings.*
13 | import kotlinx.android.synthetic.main.fragment_red_bus_my_booking.*
14 |
15 | class RedBusMyBookingFragment : Fragment(R.layout.fragment_red_bus_my_booking) {
16 |
17 |
18 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
19 | super.onViewCreated(view, savedInstanceState)
20 | setAdapter()
21 | }
22 |
23 | private fun setAdapter() {
24 | val pagerAdapter =
25 | RedBusBookingPagerAdapter(requireActivity().supportFragmentManager, lifecycle)
26 | viewPagerRedBus.adapter = pagerAdapter
27 | TabLayoutMediator(tabsRedBus, viewPagerRedBus) { tab, position ->
28 | when (position) {
29 | 0 -> tab.text = "COMPLETED"
30 | 1 -> tab.text = "CANCELLED"
31 | }
32 | }.attach()
33 | }
34 |
35 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/BusHireMyBookingFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 | import com.example.travelbus.views.adapter.adapters.BusHireBookingPagerAdapter
10 | import com.example.travelbus.views.adapter.adapters.RPoolBookingPagerAdapter
11 | import com.google.android.material.tabs.TabLayoutMediator
12 | import kotlinx.android.synthetic.main.fragment_bus_hire_my_booking.*
13 | import kotlinx.android.synthetic.main.fragment_r_pool_my_booking.*
14 |
15 |
16 | class BusHireMyBookingFragment :Fragment(R.layout.fragment_bus_hire_my_booking) {
17 |
18 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
19 | super.onViewCreated(view, savedInstanceState)
20 | setAdapter()
21 | }
22 |
23 | private fun setAdapter() {
24 | val pagerAdapter =
25 | BusHireBookingPagerAdapter(requireActivity().supportFragmentManager, lifecycle)
26 | viewPagerBusHire.adapter = pagerAdapter
27 | TabLayoutMediator(tabsBusHire, viewPagerBusHire) { tab, position ->
28 | when (position) {
29 | 0 -> tab.text = "COMPLETED"
30 | 1 -> tab.text = "CANCELLED"
31 | }
32 | }.attach()
33 | }
34 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_recent_search.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/google-services.json:
--------------------------------------------------------------------------------
1 | {
2 | "project_info": {
3 | "project_number": "1088458200903",
4 | "project_id": "travelbus-2af77",
5 | "storage_bucket": "travelbus-2af77.appspot.com"
6 | },
7 | "client": [
8 | {
9 | "client_info": {
10 | "mobilesdk_app_id": "1:1088458200903:android:3d05a0b5a1b62645c71e62",
11 | "android_client_info": {
12 | "package_name": "com.example.travelbus"
13 | }
14 | },
15 | "oauth_client": [
16 | {
17 | "client_id": "1088458200903-ivtaldcrvts9f93mqf1s3q2ruk9l7pmh.apps.googleusercontent.com",
18 | "client_type": 1,
19 | "android_info": {
20 | "package_name": "com.example.travelbus",
21 | "certificate_hash": "7179bba4e9a6d8a41a1fe5b39ba212fe40ffc584"
22 | }
23 | },
24 | {
25 | "client_id": "1088458200903-b95d1gjvsnggm83srnfu1f01cgqkft9m.apps.googleusercontent.com",
26 | "client_type": 3
27 | }
28 | ],
29 | "api_key": [
30 | {
31 | "current_key": "AIzaSyBbxO331ivpIIRcKdjzBat9jbnCbV3IQpc"
32 | }
33 | ],
34 | "services": {
35 | "appinvite_service": {
36 | "other_platform_oauth_client": [
37 | {
38 | "client_id": "1088458200903-b95d1gjvsnggm83srnfu1f01cgqkft9m.apps.googleusercontent.com",
39 | "client_type": 3
40 | }
41 | ]
42 | }
43 | }
44 | }
45 | ],
46 | "configuration_version": "1"
47 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BottomSheetPhonePay.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.content.Intent
4 | import android.os.Bundle
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import android.widget.Toast
9 | import androidx.navigation.NavController
10 | import androidx.navigation.Navigation
11 | import com.example.travelbus.R
12 | import com.example.travelbus.views.adapter.activities.PaymentSuccessActivity
13 | import com.google.android.material.bottomsheet.BottomSheetDialogFragment
14 | import kotlinx.android.synthetic.main.bottom_phonepay_layout.view.btnPay
15 |
16 | class BottomSheetPhonePay : BottomSheetDialogFragment() {
17 |
18 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
19 | super.onViewCreated(view, savedInstanceState)
20 | }
21 |
22 | override fun onCreateView(
23 | inflater: LayoutInflater,
24 | container: ViewGroup?,
25 | savedInstanceState: Bundle?
26 | ): View? {
27 | val view1 = inflater.inflate(R.layout.bottom_phonepay_layout, container, false)
28 | view1.btnPay.setOnClickListener {
29 | Toast.makeText(context, "payment done", Toast.LENGTH_LONG).show()
30 | startActivity(Intent(context, PaymentSuccessActivity::class.java))
31 | }
32 | return view1;
33 | }
34 |
35 | override fun getTheme(): Int {
36 | return R.style.AppBottomSheetDialogTheme
37 | }
38 |
39 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/RPoolMyBookingFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import com.example.travelbus.R
9 | import com.example.travelbus.views.adapter.adapters.RPoolBookingPagerAdapter
10 | import com.example.travelbus.views.adapter.adapters.RedBusBookingPagerAdapter
11 | import com.google.android.material.tabs.TabLayoutMediator
12 | import kotlinx.android.synthetic.main.fragment_r_pool_my_booking.*
13 | import kotlinx.android.synthetic.main.fragment_red_bus_my_booking.*
14 | import kotlinx.android.synthetic.main.fragment_red_bus_my_booking.viewPagerRedBus
15 |
16 |
17 | class RPoolMyBookingFragment : Fragment(R.layout.fragment_r_pool_my_booking) {
18 |
19 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
20 | super.onViewCreated(view, savedInstanceState)
21 | setAdapter()
22 | }
23 |
24 | private fun setAdapter() {
25 | val pagerAdapter =
26 | RPoolBookingPagerAdapter(requireActivity().supportFragmentManager, lifecycle)
27 | viewPagerRPool.adapter = pagerAdapter
28 | TabLayoutMediator(tabsRPool, viewPagerRPool) { tab, position ->
29 | when (position) {
30 | 0 -> tab.text = "COMPLETED"
31 | 1 -> tab.text = "CANCELLED"
32 | }
33 | }.attach()
34 | }
35 |
36 | }
--------------------------------------------------------------------------------
/app/src/main/res/layout/cities_item_layout.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
35 |
36 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_google.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
18 |
21 |
22 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_language.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
16 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_r_pool_booking_cancelled.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_r_pool_booking_completed.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_red_bus_booking_cancelled.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_red_bus_booking_completed.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_bus_hire_booking_cancelled.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_bus_hire_booking_completed.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
32 |
33 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_safety.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
13 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/activity_payment_success.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
18 |
19 |
31 |
32 |
33 |
34 |
40 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_percentage.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
27 |
34 |
35 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BoardingDropingAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.LayoutInflater
4 | import android.view.View
5 | import android.view.ViewGroup
6 | import androidx.recyclerview.widget.RecyclerView
7 | import com.example.travelbus.R
8 | import com.example.travelbus.models.local.BoardingDropping
9 | import kotlinx.android.synthetic.main.boardinglist_itemlayout.view.*
10 | import kotlinx.android.synthetic.main.itemlayout_bus.view.*
11 |
12 | class BoardingDroppingAdapter(
13 | private val borDroppingList:ArrayList, val onBardingTabClicked: OnBardingTabClicked
14 | ): RecyclerView.Adapter() {
15 |
16 | override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BoardingDroppingViewHolder {
17 | return BoardingDroppingViewHolder(
18 | LayoutInflater.from(parent.context).inflate(R.layout.boardinglist_itemlayout,parent,false),onBardingTabClicked
19 | )
20 | }
21 |
22 | override fun onBindViewHolder(holder: BoardingDroppingViewHolder, position: Int) {
23 | holder.setData(borDroppingList[position])
24 | }
25 |
26 | override fun getItemCount(): Int = borDroppingList.size
27 |
28 |
29 | class BoardingDroppingViewHolder(itemView: View, val onBardingTabClicked: OnBardingTabClicked):RecyclerView.ViewHolder(itemView){
30 |
31 | fun setData(data: BoardingDropping){
32 | itemView.apply {
33 |
34 |
35 | btnRadio.setOnClickListener {
36 | onBardingTabClicked.onTabClicked()
37 | }
38 | }
39 |
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_my_booking.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
27 |
34 |
41 |
48 |
49 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_info_circle.xml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
9 |
12 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/LoginFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.os.Bundle
4 | import android.text.Html
5 | import androidx.fragment.app.Fragment
6 | import android.view.View
7 | import androidx.navigation.NavController
8 | import androidx.navigation.Navigation
9 | import com.example.travelbus.R
10 | import kotlinx.android.synthetic.main.fragment_login.*
11 |
12 | class LoginFragment : Fragment(R.layout.fragment_login) {
13 | lateinit var navController: NavController
14 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
15 | super.onViewCreated(view, savedInstanceState)
16 | navController = Navigation.findNavController(view)
17 | // Code for underline and coloured text
18 | getColouredText()
19 | //
20 | btnLogIn.setOnClickListener {
21 | navController.navigate(R.id.action_loginFragment_to_otpFragment)
22 | }
23 | }
24 |
25 | private fun getColouredText() {
26 | val signingIn = "By signing in, your agree to our "
27 | val termsCondn = "Terms and Conditions"
28 | val and = " and "
29 | val privacyPolicy = "Privacy Policy"
30 | var term1: String = getColoredSpanned(signingIn, "#BFC0C2")
31 | var term2: String = getColoredSpanned(termsCondn, "#1133DB")
32 | var term3: String = getColoredSpanned(and, "#BFC0C2")
33 | var term4: String = getColoredSpanned(privacyPolicy, "#1133DB")
34 | tvTermCondtn.setText(Html.fromHtml(term1 + term2 + term3 + term4))
35 | }
36 |
37 | //function for getting colour text
38 | private fun getColoredSpanned(text: String, color: String): String {
39 | return "$text"
40 | }
41 |
42 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_phone.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_call_icon.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable-v24/ic_launcher_foreground.xml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
15 |
18 |
21 |
22 |
23 |
24 |
30 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_wallet.xml:
--------------------------------------------------------------------------------
1 |
6 |
12 |
18 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_steering_wheel.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
20 |
27 |
34 |
41 |
42 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/activities/SplashScreenActivity.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.activities
2 |
3 | import android.content.Intent
4 | import android.os.Bundle
5 | import com.example.travelbus.R
6 | import com.example.travelbus.views.adapter.base.BaseActivity
7 | import com.google.firebase.auth.FirebaseAuth
8 | import com.google.firebase.auth.ktx.auth
9 | import com.google.firebase.ktx.Firebase
10 | import kotlinx.coroutines.*
11 | import org.jetbrains.anko.startActivity
12 |
13 |
14 | class SplashScreenActivity : BaseActivity() {
15 | private lateinit var auth: FirebaseAuth
16 |
17 | override fun provideLayoutId(): Int = R.layout.activity_splash_screen
18 |
19 | override fun setupView(savedInstanceState: Bundle?) {
20 | auth = Firebase.auth
21 |
22 | var flag = CoroutineScope(Dispatchers.Main).async {
23 | delay(2000)
24 |
25 | if (auth.currentUser != null) {
26 | Intent()
27 | val intent = Intent(applicationContext, HomeActivity::class.java)
28 | startActivity(intent)
29 | } else {
30 | val intent = Intent(applicationContext, OnBoardingActivity::class.java)
31 | startActivity(intent)
32 | }
33 | finish()
34 | }
35 |
36 |
37 | }
38 |
39 | }
40 |
41 |
42 | // CoroutineScope(Dispatchers.Main).launch {
43 | // delay(2000)
44 | // startActivity()
45 | //
46 | //
47 | // if (auth.currentUser != null) {
48 | // val intent = Intent(this, HomeActivity::class.java)
49 | // startActivity(intent)
50 | // } else {
51 | // val intent = Intent(this, OnBoardingActivity::class.java)
52 | // startActivity(intent)
53 | // }
54 | // finish()
55 | // }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/OnBoardingFragmentAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.annotation.SuppressLint
4 | import android.content.Context
5 | import android.graphics.drawable.Drawable
6 | import android.view.LayoutInflater
7 | import android.view.View
8 | import android.view.ViewGroup
9 | import android.widget.ImageView
10 | import androidx.core.graphics.drawable.toDrawable
11 | import androidx.viewpager.widget.PagerAdapter
12 | import androidx.viewpager.widget.ViewPager
13 | import com.example.travelbus.R
14 |
15 | class OnBoardingFragmentAdapter(val context: Context) : PagerAdapter(){
16 |
17 | private lateinit var layoutInflater: LayoutInflater
18 | private val images = arrayOf(
19 | R.drawable.easy_booking,
20 | R.drawable.manage_trips,
21 | R.drawable.track_bus
22 | )
23 |
24 | override fun getCount(): Int {
25 | return images.size
26 | }
27 |
28 | override fun isViewFromObject(view: View, `object`: Any): Boolean {
29 | return view == `object`
30 | }
31 |
32 |
33 | override fun instantiateItem(container: ViewGroup, position: Int): Any {
34 | layoutInflater = context.getSystemService(Context.LAYOUT_INFLATER_SERVICE) as LayoutInflater
35 | val view: View = layoutInflater.inflate(R.layout.onboarding_custom_layout, null)
36 |
37 | val imageView = view.findViewById(R.id.onBoardingCustomImageView) as ImageView
38 | imageView.setImageResource(images[position])
39 |
40 | val viewPager = container as ViewPager
41 | viewPager.addView(view)
42 | return view
43 | }
44 |
45 | override fun destroyItem(container: ViewGroup, position: Int, `object`: Any) {
46 | val viewPager = container as ViewPager
47 | val view = `object` as View
48 | viewPager.removeView(view)
49 | }
50 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/bus_hire/BusHireDetailFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.bus_hire
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.View
6 | import androidx.navigation.NavController
7 | import androidx.navigation.Navigation
8 | import com.example.travelbus.R
9 | import kotlinx.android.synthetic.main.fragment_bus_hire_detail.*
10 | import kotlinx.android.synthetic.main.fragment_bus_hire_welcome.view.*
11 | import android.content.res.ColorStateList
12 |
13 |
14 | class BusHireDetailFragment : Fragment(R.layout.fragment_bus_hire_detail) {
15 |
16 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
17 | super.onViewCreated(view, savedInstanceState)
18 |
19 | radioButtonColorChange()
20 |
21 | btnbhProceed.setOnClickListener {
22 | activity?.supportFragmentManager?.beginTransaction()
23 | ?.replace(com.example.travelbus.R.id.busHireContainer, FillContactDetailFragment())
24 | ?.commit()
25 | }
26 |
27 | }
28 |
29 | private fun radioButtonColorChange() {
30 | val colorStateList = ColorStateList(
31 | arrayOf(intArrayOf(android.R.attr.state_enabled)), intArrayOf(
32 | resources.getColor(com.example.travelbus.R.color.materialRed)
33 | )
34 | )
35 |
36 | radioButton.setOnClickListener {
37 | radioButton.buttonTintList = colorStateList
38 | }
39 | radioButton4.setOnClickListener {
40 | radioButton4.buttonTintList = colorStateList
41 | }
42 | radioButton2.setOnClickListener {
43 | radioButton2.buttonTintList = colorStateList
44 | }
45 | radioButton3.setOnClickListener {
46 | radioButton3.buttonTintList = colorStateList
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BusAdapter.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.view.LayoutInflater
4 | import android.view.View
5 | import android.view.ViewGroup
6 | import androidx.recyclerview.widget.RecyclerView
7 | import com.example.travelbus.R
8 | import com.example.travelbus.models.local.Buses
9 | import kotlinx.android.synthetic.main.itemlayout_bus.view.*
10 |
11 | class BusAdapter(
12 | private val listOfBuses: ArrayList,
13 | var onBusItemClickListener: OnBusItemClickListener
14 | ) : RecyclerView.Adapter() {
15 |
16 | override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BusViewHolder {
17 | return BusViewHolder(
18 | LayoutInflater.from(parent.context).inflate(R.layout.itemlayout_bus, parent, false),
19 | onBusItemClickListener
20 | )
21 | }
22 |
23 | override fun onBindViewHolder(holder: BusViewHolder, position: Int) {
24 | val data = listOfBuses[position]
25 | holder.setData(data)
26 | }
27 |
28 | override fun getItemCount(): Int = listOfBuses.size
29 |
30 |
31 | class BusViewHolder(itemView: View, val onBusItemClickListener: OnBusItemClickListener) :
32 | RecyclerView.ViewHolder(itemView) {
33 |
34 | fun setData(data: Buses) {
35 | itemView.apply {
36 | tvBusName.text = data.name
37 | tvBusDesc.text = data.description
38 | tvBusBoarding.text = data.from
39 | tvBusDestination.text = data.to
40 | tvDepArrTime.text = data.timing
41 | tvTotalTime.text = data.travellingtime
42 | tvPrise.text = "₹ " + data.price
43 | busBookingCard.setOnClickListener {
44 | onBusItemClickListener.onBusClicked(data)
45 | }
46 | }
47 | }
48 | }
49 | }
--------------------------------------------------------------------------------
/app/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
14 |
17 |
20 |
23 |
26 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
38 |
41 |
42 |
45 |
46 |
47 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/BoardingDroppingFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.LayoutInflater
6 | import android.view.View
7 | import android.view.ViewGroup
8 | import androidx.recyclerview.widget.LinearLayoutManager
9 | import com.example.travelbus.R
10 | import com.example.travelbus.models.local.BoardingDropping
11 | import com.example.travelbus.views.adapter.adapters.BoardingDroppingAdapter
12 | import com.example.travelbus.views.adapter.adapters.OnBardingTabClicked
13 | import kotlinx.android.synthetic.main.fragment_boarding_dropping.*
14 |
15 | class BoardingDroppingFragment : Fragment(R.layout.fragment_boarding_dropping),OnBardingTabClicked {
16 |
17 | private var borDroppingList = ArrayList()
18 | private lateinit var boardingAdapter: BoardingDroppingAdapter
19 |
20 |
21 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
22 | super.onViewCreated(view, savedInstanceState)
23 | setData()
24 | boardingAdapter = BoardingDroppingAdapter(borDroppingList,this)
25 | setRecyclerview()
26 |
27 | constraintLayout.setOnClickListener{
28 | onTabClicked()
29 |
30 | }
31 | }
32 |
33 | private fun setRecyclerview() {
34 | recyclerBoardingDroppingList.adapter = boardingAdapter
35 | }
36 |
37 | private fun setData() {
38 | var boardingDropping = BoardingDropping()
39 | boardingDropping.mobileNo = "8888884526"
40 | boardingDropping.subTitle = "Station Road- Oppo:- ST Stand"
41 | boardingDropping.time = "15:00"
42 | boardingDropping.title = "Jaipur Railway Station"
43 | borDroppingList.add(boardingDropping)
44 |
45 | }
46 |
47 | override fun onTabClicked() {
48 | viewHoriZontal1.visibility= View.INVISIBLE
49 | viewHoriZontal2.visibility = View.VISIBLE
50 |
51 | }
52 |
53 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_offer.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
18 |
25 |
26 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_technical_issue.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
14 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_r_pool_my_booking.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
20 |
21 |
30 |
31 |
43 |
44 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_red_bus_my_booking.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
20 |
21 |
30 |
31 |
43 |
44 |
49 |
50 |
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_bus_hire_my_booking.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
20 |
21 |
30 |
31 |
43 |
44 |
49 |
50 |
51 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/SignUpFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.content.Intent
4 | import android.os.Bundle
5 | import android.text.Html
6 | import androidx.fragment.app.Fragment
7 | import android.view.LayoutInflater
8 | import android.view.View
9 | import android.view.ViewGroup
10 | import androidx.navigation.NavController
11 | import androidx.navigation.Navigation
12 | import com.example.travelbus.R
13 | import com.example.travelbus.views.adapter.activities.HomeActivity
14 | import kotlinx.android.synthetic.main.fragment_otp.*
15 | import kotlinx.android.synthetic.main.fragment_sign_up.*
16 |
17 | class SignUpFragment : Fragment(R.layout.fragment_sign_up) {
18 |
19 | lateinit var navController: NavController
20 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
21 | super.onViewCreated(view, savedInstanceState)
22 | setClouredText()
23 | navController = Navigation.findNavController(view)
24 |
25 |
26 | }
27 |
28 |
29 | private fun setClouredText() {
30 | // privacy policy
31 | val signingIn = "By signing in, your agree to our "
32 | val termsCondn = "Terms and Conditions"
33 | val and = " and "
34 | val privacyPolicy = "Privacy Policy"
35 | var term1: String = getColoredSpanned(signingIn, "#BFC0C2")
36 | var term2: String = getColoredSpanned(termsCondn, "#1133DB")
37 | var term3: String = getColoredSpanned(and, "#BFC0C2")
38 | var term4: String = getColoredSpanned(privacyPolicy, "#1133DB")
39 |
40 | tvTermCondtn123.setText(Html.fromHtml(term1 + term2 + term3 + term4))
41 |
42 | btnSignUp.setOnClickListener {
43 | var bundle = Bundle()
44 | bundle.putString("phonenumber",etMobileNo.text.toString())
45 | navController.navigate(R.id.action_signUpFragment_to_otpFragment,bundle)
46 | }
47 |
48 | }
49 |
50 |
51 | //function for getting colour text
52 | private fun getColoredSpanned(text: String, color: String): String {
53 | return "$text"
54 | }
55 |
56 | }
--------------------------------------------------------------------------------
/app/src/main/res/layout/fragment_my_bookings.xml:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
26 |
27 |
43 |
44 |
49 |
50 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/OnBoardingMainFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments
2 |
3 | import android.content.Context
4 | import android.os.Bundle
5 | import androidx.fragment.app.Fragment
6 | import android.view.LayoutInflater
7 | import android.view.View
8 | import android.view.ViewGroup
9 | import androidx.navigation.NavController
10 | import androidx.navigation.Navigation
11 | import androidx.viewpager.widget.ViewPager
12 | import androidx.viewpager2.widget.ViewPager2
13 | import com.example.travelbus.R
14 | import com.example.travelbus.views.adapter.adapters.OnBoardingFragmentAdapter
15 | import com.google.android.material.tabs.TabLayout
16 | import com.google.android.material.tabs.TabLayoutMediator
17 | import com.google.android.material.tabs.TabLayoutMediator.TabConfigurationStrategy
18 | import kotlinx.android.synthetic.main.fragment_on_boarding_main.*
19 |
20 | class OnBoardingMainFragment : Fragment(R.layout.fragment_on_boarding_main), TabLayout.OnTabSelectedListener {
21 | lateinit var navController: NavController
22 |
23 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
24 | super.onViewCreated(view, savedInstanceState)
25 | setViewPagerAdapter()
26 | navController = Navigation.findNavController(view)
27 |
28 | // navigation for next fragment
29 | btnJoin.setOnClickListener {
30 | navController.navigate(R.id.action_onBoardingMainFragment_to_signupOrLoginFragment)
31 |
32 | }
33 | }
34 |
35 |
36 | private fun setViewPagerAdapter() {
37 | val viewPagerAdapter = OnBoardingFragmentAdapter(activity as Context)
38 | viewPager.setAdapter(viewPagerAdapter)
39 | tabLayout.setupWithViewPager(viewPager)
40 |
41 | // TabLayoutMediator(
42 | // tabLayout, viewPager
43 | // ) { tab, position -> }.attach()
44 | }
45 |
46 | override fun onTabSelected(tab: TabLayout.Tab?) {
47 | TODO("Not yet implemented")
48 | }
49 |
50 | override fun onTabUnselected(tab: TabLayout.Tab?) {
51 | TODO("Not yet implemented")
52 | }
53 |
54 | override fun onTabReselected(tab: TabLayout.Tab?) {
55 | TODO("Not yet implemented")
56 | }
57 |
58 | }
--------------------------------------------------------------------------------
/app/src/main/res/drawable/travel_img.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
18 |
21 |
24 |
27 |
30 |
33 |
36 |
39 |
40 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_bus.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/fragments/mybookingsfragments/RedBusBookingCompletedFragment.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.fragments.mybookingsfragments
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import android.view.View
6 | import androidx.recyclerview.widget.LinearLayoutManager
7 | import com.example.travelbus.R
8 | import com.example.travelbus.models.local.BookingDetails
9 | import com.example.travelbus.views.adapter.adapters.BookingListAdapter
10 | import com.google.firebase.auth.FirebaseAuth
11 | import com.google.firebase.auth.ktx.auth
12 | import com.google.firebase.firestore.ktx.firestore
13 | import com.google.firebase.ktx.Firebase
14 | import kotlinx.android.synthetic.main.fragment_r_pool_booking_completed.*
15 | import kotlinx.android.synthetic.main.fragment_red_bus_booking_completed.*
16 |
17 | class RedBusBookingCompletedFragment : Fragment(R.layout.fragment_red_bus_booking_completed) {
18 |
19 | val bookingList = ArrayList()
20 |
21 | private var db = Firebase.firestore
22 | private lateinit var auth: FirebaseAuth
23 | var userRef = db.collection("users")
24 | var bookingRef = db.collection("bookings")
25 |
26 | override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
27 | super.onViewCreated(view, savedInstanceState)
28 | auth = Firebase.auth
29 | getFirebaseData()
30 | }
31 |
32 | private fun getFirebaseData() {
33 | auth.currentUser?.uid.let { id ->
34 | if (id != null) {
35 | userRef.document(id).get().addOnSuccessListener { doc->
36 | if (doc.data?.get("bookings") != null) {
37 | val bookingId: String = doc.data?.get("bookings").toString()
38 | setAdapter(bookingId)
39 | }
40 | }
41 | }
42 | }
43 | }
44 |
45 | private fun setAdapter(bookingId: String) {
46 | bookingList.add(BookingDetails("04 Oct 2021, Monday", "Pune", "Mumbai", "149.3kms", "299/- Paid Via Phonepe"))
47 | val bookingListAdapter = BookingListAdapter(bookingList)
48 | val linearLayoutManager = LinearLayoutManager(activity)
49 |
50 | recyclerViewRedBusCompleted.layoutManager = linearLayoutManager
51 | recyclerViewRedBusCompleted.adapter = bookingListAdapter
52 | bookingListAdapter.notifyDataSetChanged()
53 | }
54 |
55 | }
--------------------------------------------------------------------------------
/app/src/main/res/navigation/nav_graph_busbooking.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
13 |
16 |
17 |
22 |
25 |
28 |
29 |
34 |
37 |
38 |
43 |
48 |
49 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_passengers.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
12 |
15 |
18 |
19 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_referral_icon.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/java/com/example/travelbus/views/adapter/adapters/BusSeatViewHolder.kt:
--------------------------------------------------------------------------------
1 | package com.example.travelbus.views.adapter.adapters
2 |
3 | import android.util.Log
4 | import android.view.View
5 | import android.widget.ImageView
6 | import android.widget.LinearLayout
7 | import com.example.travelbus.R
8 | import com.example.travelbus.models.local.Seats
9 | import com.example.travelbus.views.adapter.base.BaseItemViewHolder
10 |
11 | class BusSeatViewHolder(val view: View, val seatClickedListener: SeatClickedListener) :
12 | BaseItemViewHolder(view) {
13 |
14 |
15 | override fun setData(data: Seats) {
16 | val seatIcon = view.findViewById(R.id.imageSeat)
17 | val seat = view.findViewById(R.id.seatItem)
18 | setSeatIcon(data, seatIcon, seat)
19 |
20 | seat.isSelected = false
21 |
22 | seat.setOnClickListener {
23 | if (seat.isSelected) {
24 | seat.isSelected = false
25 | seatIcon.setBackgroundResource(R.drawable.ic_seat_selected)
26 | seatClickedListener.onSeatSelected()
27 | } else {
28 | seat.isSelected = true
29 | setSeatIcon(data, seatIcon, seat)
30 | seatClickedListener.onSeatDeselected()
31 | }
32 | }
33 | }
34 |
35 | private fun setSeatIcon(data: Seats, seatIcon: ImageView, seat: LinearLayout) {
36 | Log.d("amol", "setSeatIcon: ${data.real_seat+""+data.available+""+data.seat_no+""+data.type}")
37 | if (data.real_seat.equals("yes")) {
38 | if (data.type == "female") {
39 | if (data.available == "yes") {
40 | seatIcon.setBackgroundResource(R.drawable.ic_seat_female_available)
41 | } else {
42 | seat.isClickable = false
43 | seatIcon.isClickable = false
44 | seatIcon.setBackgroundResource(R.drawable.ic_seat_female_booked)
45 | }
46 | } else {
47 | if (data.available == "yes") {
48 | seatIcon.setBackgroundResource(R.drawable.ic_seat_available)
49 | } else {
50 | seat.isClickable = false
51 | seatIcon.isClickable = false
52 | seatIcon.setBackgroundResource(R.drawable.ic_seat_booked)
53 | }
54 | }
55 | }else{
56 | seat.isClickable = false
57 | seatIcon.isClickable = false
58 | }
59 | }
60 |
61 |
62 | }
63 |
64 |
65 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_support.xml:
--------------------------------------------------------------------------------
1 |
6 |
10 |
14 |
17 |
18 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_rewards.xml:
--------------------------------------------------------------------------------
1 |
6 |
9 |
10 |
--------------------------------------------------------------------------------
/app/src/main/res/drawable/ic_help.xml:
--------------------------------------------------------------------------------
1 |
6 |
13 |
18 |
23 |
28 |
33 |
34 |
--------------------------------------------------------------------------------