Git Product home page Git Product logo

cbonlineapp's Introduction

CBOnlineApp

😎⚡️Online App for Coding Blocks Online

codebeat badge Maintainability Codacy Badge Build

An app to consume online courses available at https://online.codingblocks.com

Application is available here:

Get it on Google Play

Downloads Badge Rating Badge

Screenshots

Libraries used and their documentation

Contributions Best Practices

For first time Contributors

First-time contributors can read CONTRIBUTING.md file for help regarding creating issues and sending pull requests.

Branch Policy

We have the following branches

  • development All development goes on in this branch. If you're contributing, you are supposed to make a pull request to development. PRs to development branch must pass a build check and a unit-test check on Circle CI.
  • master This contains shipped code. After significant features/bugfixes are accumulated on development, we make a version update and make a release.

Code practices

Please help us follow the best practices to make it easy for the reviewer as well as the contributor. We want to focus on the code quality more than on managing pull request ethics.

  • Single commit per pull request
  • For writing commit messages please read the COMMITSTYLE carefully. Kindly adhere to the guidelines.
  • Follow uniform design practices. The design language must be consistent throughout the app.
  • The pull request will not get merged until and unless the commits are squashed. In case there are multiple commits on the PR, the commit author needs to squash them and not the maintainers cherrypicking and merging squashes.
  • If the PR is related to any front end change, please attach relevant screenshots in the pull request description.

Join the development

  • Before you join the development, please set up the project on your local machine, run it and go through the application completely. Press on any button you can find and see where it leads to. Explore. (Don't worry ... Nothing will happen to the app or you due to the exploring 😉 Only thing that will happen is, you'll be more familiar with what is where and might even get some cool ideas on how to improve various aspects of the app.)
  • If you would like to work on an issue, drop in a comment at the issue. If it is already assigned to someone, but there is no sign of any work being done, please free to drop in a comment so that the issue can be assigned to you if the previous assignee has dropped it entirely.

For Testers: Testing the App

If you are a tester and want to test the app, you have two ways to do that:

  1. Installing APK on your device: You can get debug APK as well as Release APK in the apk branch of the repository. After each PR merge, both the APKs are automatically updated. So, just download the APK you want and install it on your device. The APKs will always be the latest one.

cbonlineapp's People

Contributors

adiig7 avatar adityastic avatar aggarwalpulkit596 avatar akshobhyap avatar championswimmer avatar codersanjeev avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar dhruv-194 avatar hardik0899 avatar haripriyab avatar harshithdwivedi avatar iamspathan avatar jddeep avatar khandelwalpranav05 avatar liveharshit avatar mannprerak2 avatar praj1wal avatar prathamk22 avatar prince-09 avatar prudhvir3ddy avatar rajkumaar23 avatar raystatic avatar rob729 avatar rotbolt avatar sahalsaad avatar shivamgohri avatar tdevm avatar vikashkmr519 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cbonlineapp's Issues

No intent is set for viewpager in the homefragment.

Describe the bug

On clicking the viewpager view nothing happens.

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'Homefragment'
  2. Click on 'viewpager that swipes on definite interval'
  3. Bug -> No response on click .

Expected behavior
On clicking the viewpager a new page should open up.

  1. For the first three slides respective course activity should open up.
  2. For the 'Share success story ' , the coding block website should open up.

Would you like to work on the issue?

  • [✔ ] Yes
  • No
  • Other:

Refactor: Text is Hard-coded

Describe the feature you'd like
Currently, in many XML files, the text is hard-coded while it should be placed in strings.xml file.

Additional context
If placed in strings.xml then we can introduce the Hindi language too.

Would you like to work on the issue?

  • Yes

bottom start trial button in course activity not working

Describe the bug
The bottom start trial button in the course activity is not working.

To Reproduce

  1. Go to 'course activity'
  2. Scroll down to 'batches'
  3. click on start trail button, nothing happens there o click

Expected behavior
it should enroll user to that particular batch and lead to my course section

Screenrecording
ezgif com-video-to-gif

Smartphone Info:

Device Lenovo K8 Note
Android Version Oreo 8.1

Would you like to work on the issue?

  • Yes
  • No
  • Other:

Improvise Quiz Activty

Describe the feature you'd like
There are multiple issues in the quiz so I'll be breaking into separate PR's

  • Inappropriate flow of quiz - quiz has an inappropriate flow it should follow a proper flow with proper confirmation at every point

  • Incorrect Shimmer Layout for Quiz

  • Improve Previous Attempts leaderboard

  • Improve Quiz Layout

  • Incorrect Time in Quiz Attempt

  • Add Submit Quiz Button in Bottom Sheet

arrow should revert when the list expands in course activity

Describe the bug
If the list is expanded in course activity, the position of arrow does not change
To Reproduce

  1. Go to 'course activity'
  2. Click on 'one of the item of what will you learn'
  3. If the list is expanded, the direction of arrow does not revert

Expected behavior
If the list is expanded, the direction of arrow should revert

Screenshots
WhatsApp Image 2019-05-20 at 23 06 03

Smartphone Info:

Device <Lenovo k8 note
Android Version Oreo 8.0

Would you like to work on the issue?

  • Yes
  • No
  • Other:

Login Activity layout error in landscape mode

Describe the bug

The login activity has layout currently for portrait and it's not properly visible in landscape mode

To Reproduce
Open the app

Expected behavior
The activity should be portrait or a new layout for landscape should be made.

Logs
None

Screenshots
screenshot-1557833704284

Would you like to work on the issue?

  • Yes
  • No
  • Other:

App crashes on refreshing in All Courses

Describe the bug
App crashes on refreshing in All Courses

To Reproduce

  1. Go to All Courses.
  2. Refresh by swiping down.
  3. App will crash.

Expected behavior
App shouldn't crash and the list should reload.

Logs

android.view.ViewRootImpl$CalledFromWrongThreadException: Only the original thread that created a view hierarchy can touch its views.
        at android.view.ViewRootImpl.checkThread(ViewRootImpl.java:6958)
        at android.view.ViewRootImpl.invalidateChildInParent(ViewRootImpl.java:1120)
        at android.view.ViewGroup.invalidateChild(ViewGroup.java:5207)
        at android.view.View.invalidateInternal(View.java:13676)
        at android.view.View.invalidate(View.java:13640)
        at android.view.View.invalidateParentIfNeeded(View.java:13829)
        at android.view.View.clearAnimation(View.java:20211)
        at androidx.swiperefreshlayout.widget.SwipeRefreshLayout.a(SwipeRefreshLayout.java:486)
        at androidx.swiperefreshlayout.widget.SwipeRefreshLayout.a(SwipeRefreshLayout.java:472)
        at androidx.swiperefreshlayout.widget.SwipeRefreshLayout.setRefreshing(SwipeRefreshLayout.java:434)
        at com.codingblocks.cbonlineapp.c.b$e$b.a(AllCourseFragment.kt:176)
        at com.codingblocks.cbonlineapp.c.b$e$b.invoke(AllCourseFragment.kt:32)
        at kotlin.c.a$a.run(Thread.kt:30)

GIF
ezgif com-video-to-gif (76)

Would you like to work on the issue?

  • Yes
  • No

use Arraylist to create Relationship

@championswimmer bhaiya should we use ArrayList as an embedded object to create relationships among different classes rather creating this relationship manually as we are getting a nested object structure and from the api call straight forward and relationship are required when we need to manually create relationship between two seperate classes @the-dagger bhaiya your thoughts on this ?

Dropdown in Course section not working

Describe the bug
When you see any course and go to its What will you learn section, there are cards representing each section of the course. When you click on the card, it will expand but when you click on the dropdown button, nothing happens.

There are solutions I can think of - remove the dropdown button or make it workable.

To Reproduce
Home -> Go to any Course -> What will you learn section -> Try clicking dropdown button

Expected behavior
The dropdown button should have worked.

Smartphone Info:
Device - Pixel 2 XL
Android Version - Android Q Beta

Would you like to work on the issue?

  • Yes

Refactor the whole code

Describe the bug
The app is currently not following standards of dimens, string, colors and constants. Need to refactor it according to the standards.

Expected behavior
It should be following it.

Would you like to work on the issue?

  • Yes
  • No
  • Other:

Crash while initializing youtube player

Go to all courses and click on a course, the app crashes with the following log :

2018-12-13 16:03:53.144 20965-20965/? E/ActivityThread: Service com.google.android.youtube.api.service.YouTubeService has leaked IntentReceiver aeqv@b4c57ea that was originally registered here. Are you missing a call to unregisterReceiver()?
    android.app.IntentReceiverLeaked: Service com.google.android.youtube.api.service.YouTubeService has leaked IntentReceiver aeqv@b4c57ea that was originally registered here. Are you missing a call to unregisterReceiver()?
        at android.app.LoadedApk$ReceiverDispatcher.<init>(LoadedApk.java:1383)
        at android.app.LoadedApk.getReceiverDispatcher(LoadedApk.java:1153)
        at android.app.ContextImpl.registerReceiverInternal(ContextImpl.java:1422)
        at android.app.ContextImpl.registerReceiver(ContextImpl.java:1395)
        at android.app.ContextImpl.registerReceiver(ContextImpl.java:1383)
        at android.content.ContextWrapper.registerReceiver(ContextWrapper.java:604)
        at aghx.<init>(SourceFile:38)
        at agip.a(SourceFile:27)
        at agip.get(SourceFile:53)
        at aupc.get(SourceFile:9)
        at les.B(SourceFile:268)
        at aepr.a(SourceFile:6)
        at aepr.get(SourceFile:9)
        at aupc.get(SourceFile:9)
        at lex.a(SourceFile:6)
        at ldp.<init>(SourceFile:11)
        at com.google.android.apps.youtube.embeddedplayer.service.service.jar.ApiPlayerService.<init>(SourceFile:46)
        at com.google.android.apps.youtube.embeddedplayer.service.service.jar.ApiPlayerFactoryService$1.run(SourceFile:4)
        at android.os.Handler.handleCallback(Handler.java:789)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6809)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

Bad current drawer item status

Describe the bug
Wrong indication of currently open screen in drawer menu

To Reproduce

Wrong indication of open screen

Expected behavior
These drawer menu should indicate currently open screen

Screenshots
Screenshot_20190516-000457__01

Would you like to work on the issue?

  • Yes
  • No
  • Other:

Crash while initializing youtube player

Go to all courses and click on a course, the app crashes with the following log :

2018-12-13 16:03:53.144 20965-20965/? E/ActivityThread: Service com.google.android.youtube.api.service.YouTubeService has leaked IntentReceiver aeqv@b4c57ea that was originally registered here. Are you missing a call to unregisterReceiver()?
    android.app.IntentReceiverLeaked: Service com.google.android.youtube.api.service.YouTubeService has leaked IntentReceiver aeqv@b4c57ea that was originally registered here. Are you missing a call to unregisterReceiver()?
        at android.app.LoadedApk$ReceiverDispatcher.<init>(LoadedApk.java:1383)
        at android.app.LoadedApk.getReceiverDispatcher(LoadedApk.java:1153)
        at android.app.ContextImpl.registerReceiverInternal(ContextImpl.java:1422)
        at android.app.ContextImpl.registerReceiver(ContextImpl.java:1395)
        at android.app.ContextImpl.registerReceiver(ContextImpl.java:1383)
        at android.content.ContextWrapper.registerReceiver(ContextWrapper.java:604)
        at aghx.<init>(SourceFile:38)
        at agip.a(SourceFile:27)
        at agip.get(SourceFile:53)
        at aupc.get(SourceFile:9)
        at les.B(SourceFile:268)
        at aepr.a(SourceFile:6)
        at aepr.get(SourceFile:9)
        at aupc.get(SourceFile:9)
        at lex.a(SourceFile:6)
        at ldp.<init>(SourceFile:11)
        at com.google.android.apps.youtube.embeddedplayer.service.service.jar.ApiPlayerService.<init>(SourceFile:46)
        at com.google.android.apps.youtube.embeddedplayer.service.service.jar.ApiPlayerFactoryService$1.run(SourceFile:4)
        at android.os.Handler.handleCallback(Handler.java:789)
        at android.os.Handler.dispatchMessage(Handler.java:98)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:6809)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

Issues in Contact Us

Describe the bug
Contact US On Navigation Drawer has following error

  1. Toolbar Back press not working
  2. Toolbar name is wrong
  3. Toll free number is not cliclacble
  4. Address has for some text issues, where characters cant be displayed
  5. I think it needs update for all the centres of CB

To Reproduce

  1. Go to Contact us from nav drawer

Expected behavior
The above should not be their

Would you like to work on the issue?

  • Yes
  • No
  • Other:

Add databinding to activities.

With the databinding library of android the boilerplate code could be reduced alot.

[ ] Add databinding to activities
[ ] Add databinding to adapters
[ ] Add databinding to fragments

Would you like to work on issue
Yes

bug in batches recyclerview in course activity

Describe the bug
While scrolling the bathes cards in course activity if we stop between two cards then it gets stuck there. Whereas it should move to card that is swiped more
To Reproduce

  1. Go to 'bottom of course activity'
  2. Scroll batches cards

Expected behavior
if we stop between two cards, then it should move to card that is swiped more
Screenrecording
ezgif com-video-to-gif

Smartphone Info:

Device Lenovo k8 note
Android Version Oreo 8.0

Would you like to work on the issue?

  • Yes
  • No
  • Other:

Bugs/Improvements List

  • Show Quiz Result on quiz submission
  • show marked/unmarked status in quiz bottom question sheet
  • bottom sheet gets dismissed completed on swiping down[Bug]
  • show small rating bar in anko course card layout

youtube url regex

http(?:s?):\/\/(?:www\.)?youtu(?:be\.com\/watch\?v=|\.be\/)([\w\-\_]*)(&(amp;)?‌​[\w\?‌​=]*)?

Integrate Koin

Integrate Koin With api for retrofit calls,common for shared preferences and other system related thing and database module for dao's

App crash after login

Once the user tries to login into the app, it crashes each time the app is launched.

bug in viewpager in home fragment

In home fragment in viewpager, the after completing one cycle the view pager goes to second item instead of first
To Reproduce

  1. Go to 'Home Fragment'
  2. wait for completing one cycle of viewpager, after that it will go to second position instead of first

Expected behavior
After one cycle of viewpager, it should go to first position instead of second

Smartphone Info:

Device Lenovo k8 note
Android Version Oreo 8.0

Would you like to work on the issue?

  • Yes
  • No
  • Other:

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.