GithubHelp home page GithubHelp logo

fossasia / open-event-organizer-android Goto Github PK

View Code? Open in Web Editor NEW
1.8K 21.0 493.0 61.9 MB

Open Event Mobile App for Organizers and Entry Managers https://play.google.com/store/apps/details?id=com.eventyay.organizer

License: Apache License 2.0

Shell 0.20% Java 99.74% Ruby 0.06%

open-event-organizer-android's Issues

MVP - Model View Presenter pattern Implementation

Currently the project is based on MVC (Model View Controller) pattern in which unit testing is difficult. Hence we will be implementing MVP pattern which facilitates unit testing.

Expected: Design MVP interface containing the required interfaces.

Loaded Event List hides while pulling refresh

On the Events Page, already loaded list hides when pulled refresh is called.

Expected: Already loaded list shouldn't be hidden while pulled refresh. Only it gets updated once refresh is done or shows previous list if refresh fails.

Implement life cycle methods

Right now, all of the initialization is done in the constructor itself. It is better to move the initialization code to the lifecycle methods as the constructor cannot be "too heavy". Also the observables subscribed should be unsubscribed at appropriate lifecycle method.

Upgrade to Ionic 2.0.x

This project right now is on Ionic 2 beta version. Please upgrade it to the latest stable release version of Ionic 2.

Improperly cached Attendee List

The Attendee list is not cached according to event ID leading to display of wrong attendees for an Event when an app is offline.

I am fixing this. Needed for #49.

Relevant Screencast:
ezgif com-video-to-gif 2

Here Attendees for event betterclever-test-event are showing up in betterclever-test-event2. The list updates when internet is on.

Implement Offline Check-in

If the app looses connection to the Internet during check-in, do the following

  • Give user a warning from the app (#30)
  • Allow user to continue to check in attendees offline
  • Sync all check-ins will automatically when your Internet connection is restored

Propose technology and set up basics

There were already some discussions about the choice of technology of this project, which could either be a web app or a native Android app. Please propose the most suitable choice of technology and set up the repository accordingly.

Only show email and password and a checkbox for server on start screen

The start screen currently gives three options to fill in:
Server, Email, Password.

Please only show Email and Password and below a small checkbox in smaller font

  • eventyay.com

If the user unticks the checkbox, it should be possible to enter an alternative deployment (just like now).

Implement Login MVP

Part solving #92 - MVP Implementation

  • Use Retrofit instead of Volley ( Easy of Testing )
  • Use RxJava for Observable pattern rather than callbacks ( easy testing with pluggable schedulers and no need of callback captures), with additional feature of offloading tasks over Main Thread
  • Use Retrolambda to reduce anonymous inner classes and use lambda expressions itself

Proposed Architecture:

Package Style :

  • contract (Containing interfaces)
    • model ( Contains Repository pattern model too )
    • view
    • presenter
  • data
    • network ( Contains Retrofit implementation )
    • Model Implementation
  • ui
    • presenter
      • Login Presenter Implementation
    • activities
      • LoginActivity ( View Implementation )

Any suggestions are welcome

Convert orga app to Native android app

Hey i started converting orga app into native android app, here is the initial demo, all the functionality of the current orga app is present in it, here is the demo link & the repo of the app is here

rsz_screenshot_20170428-163743

rsz_screenshot_20170428-163800

rsz_1screenshot_20170428-163804

rsz_screenshot_20170428-164034

rsz_screenshot_20170428-164047

Don't download obsolete packages

Some of the Android SDK downloaded are obsolete and not needed.
The travis log itself mentions this, so removing these will speed up the build process.

Installing Archives:
  Preparing to install archives
  Downloading Android Support Library, revision 23.2.1 (Obsolete)
  Installing Android Support Library, revision 23.2.1 (Obsolete)
    Installed Android Support Library, revision 23.2.1 (Obsolete)
  Done. 1 package installed.

Page load time for Attendees List Page

Currently it takes more time to load attendees list page in case of large attendees.
For now we can try generating only list view items which fit in the viewport from the loaded attendees list on scroll. Will check if it decreases page loading time.
I will work on this.

Success of Checked-in Attendee unclear

Scanning the QR code of an attendee does not give me a clear success message. Has it been successful or not?

Expected: Show a screen "Success. Attendee [Name of Attendee] has been checked in."

Below that display a button "OK"

Two Loading Spinners on Pulled Refresh

On Dashboard Page and Attendees Page, two load spinners appear on pulled refresh.

Expected: Only load spinner of refresher should appear on pulled refresh

Upgrade to Ionic 3.0

Ionic Version 3 has been released based on Angular 4.0.
Project should be upgraded to include new features in platform like Lazy Loading which is now supported.

I am working on this.

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.