Giter Club home page Giter Club logo

faro's People

Contributors

gauravr007 avatar gorepradnyesh avatar kaivansanghvi avatar nakulshah87 avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

faro's Issues

Implement validations for datastore apis

Validations involve multiple hits to the datastore. We need to identify all the validations required and implement them across the board.
Example: If user tries to create activity, we need to check if event exists and if user is part of event.

Handle delete Event completely

When we delete an event, all polls, activities, assignments, etc should also be deleted with it on the backend. Currently after creating activities for an event, when i am deleting the event, i see stale entries for activities in the database..

resend the updated object when calling update API calls

If not then i would have to do one of the 2 things:

  1. Update the object on the frontend in the code only
  2. Make another API call to get the newly updated object.

If we could return the object in the update API itself then it would be the best way to keep frontend and backend in sync

Handle update correctly

Eg: Poll has option 1,2,3 saved on the server.
User1 adds option4 so sends update as 1,2,3,4 to server
Simultaneously user2 adds option5 so sends 1,2,3,5

Server should finally have 1,2,3,4,5

Same thing should be handled for all other updates.

Return MinUser on Invitefriend API

As a response to inviteFriend can we return the MinUser object so that i can store it in the list in frontEnd. Without this the local DB on the frontend will not have the friend until i call getFriends API again to get all my friends

Update APIs - Send updated object back to client

@gorillapie2000 @nakulshah87 @gauravr007 @Gopats : I am inclined over making changes to all updates APIs to send the updated object back.. Reason being: Today, we assume that since the client sent the update object, he should be able to use the updated object on client side if we were to send back HTTP-200(OK) and the server need not have to send the updated object.. However, if 2 clients make near simultaneous update, then each of them would be missing each others update. In some APIs, like add/update TODOs, client only sends the add/update piece and its possible that the same TODO was updated by another client. Updated object would help..

Pros: Avoid extra GET call for updated object.
Cons: Sending more data over the wire.

Unknown: How does notification play a role in the entire mix? For example, a silent client who does not update/interact in the event, also needs to know about all the updates. Would notification poke that client to pull updates?

Thoughts? Suggestions?

Decouple data model from UI code.

Event.java
switch (status){
case 0:
setImg_resource(R.drawable.green);
break;
case 1:
setImg_resource(R.drawable.yellow);
break;
case 2:
setImg_resource(R.drawable.red);
break;
}

Tricky workflow for displaying/updating my Assignment Items

As per the reequirement, we need a page which displays all my items for the event which includes all my items across all assignments.
Eg: if user marks 2 assignments as done and if these belong to activity 1 and 2, then how to make the update API call to the server?

MRU events

Create Datastore and API ability to get MRU events for a given user.

Number of MRU events can be decided.

Assignment APIs missing

Are Apis for assignments not implemented on backend?

in the api folder i do not see any file for assignments. Also in the apilogic folder in AssignmentManagement file there are no addassignment methods.

Can you please take a look into that when you can?

Periodic thread

Do we want to have periodic thread running in background to update the eventlist?

Update Poll vote change

After voting the first time, if the user then changes his vote, I see that we do not remove the user from the old option's voters List.

We need to somehow update this on the server.

500 Error when updating event

i see the following error when make the updateEvent Api call.

Caused by: com.sun.jersey.api.MessageException: A message body writer for Java class com.zik.faro.data.Event, and Java type class com.zik.faro.data.Event, and MIME media type application/octet-stream was not found.

Assigning names to assignments

Can't see names. Only a white screen. however, if I click anywhere on that screen, it is picking up a name. I am thinking that the font color is white on the white background ?

image

Delete item at backend

When an item is deleted, it is not removed from the backend. Needs to be implemented in updateItemsInExistingList method

Multichoice Poll

When creating poll need to store if the poll is a multichoice poll or not

ID for item created at client

As part of the constructor for item, we create the ID for it at client side itself unlike any other object. I think this is incorrect and we should be consistent with every other object and create it at the server side only.

Event API - Clarifications

@nakulshah87 : eventCreatorId will always be "faroUserId" of the Faro user who will create the event. And this field can never be changeable. Is that correct understanding?

Activity Calendar issue

When creating the activity on the server, the start Calendar gets set as the end Calendar.

API for saving the public URLs and metadata of the photos uploaded to Facebook

After images are uploaded to Facebook, the client (android/iOS) will issue the request to persist the public URL of the images along with some associated useful metadata.

API can look like this :

Resource : Event
Path: /v1/event/event_id/images
Method : POST
Params :
images - List of Image object below

Image
String imageSourceUrl
enum imageProvider (Facebook, Dropbox, etc. For now the enum should only have Facebook)
String ownerId (Faro user id who uploaded the image)
Date uploadDate
long imageWidth
long imageHeight

API to obtain the images :

Path: /v1/event/event_id/images
Method : GET

Poll update api issue

After voting for a poll option, i call update Poll API. This causes each poll option to be duplicated and returned from the server.
Also on changing the vote to another option is not getting updated.

Allow Faro acess to you location

The popup to allow location to FARO is being requested after an event is created. Should be when the app is opened, or when a person is adding a location to an event.

Facebook login integration for images

When trying to view/upload images , if a valid access token for the user's Facebook is not available within the application, then need to prompt the user to login to their account and provide the app the required privileges.

poll Update

when updating poll with new poll options, those new poll Options do not get new ids assigned

Event Ownership Transfer

Ownership transfer will be based on new event owner selected by current event owner. New owner will not have choice to accept ownership.

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.