powerlineapp / powerline-mobile Goto Github PK
View Code? Open in Web Editor NEWLicense: Other
License: Other
@jterps08 , can you please confirm what is the desired behaviour?
I should not be able to upvote/downvote posts that I authored/created myself (buttons should not appear). I should only see the upvote/downvote buttons on other user’s posts.
Please fix this line of code
There are a back slash when call an API request like https://api-dev.powerli.ne/api/groups\
The newsfeed used to display "red dots" next to items that were considered priority zone items. The counters represent the number of red dot items. For example, if the user has 7 priority zone items in the All feed, the All counter shows 7 and the first 7 items in the newsfeed each have red dots. The red dot disappears when the item is no longer in the priority zone. This functionality should still work, but it depends on newsfeed data to test.
The Filters in the Group Selector do not work. They should filter the newsfeed to show content for that specific group. The “All” filter should show content from all of the user’s groups. The country group button should only show content from the user's country group. The save the whales group button should only show the Save the Whales group content, etc.
The More button should display the current filter if not All, town, state, or country. To clarify, the group selector always has five buttons shown: All, Town, State, Country, More... When the user taps the "More" button, the addition tiles of other groups should appear. When a group tile is selected (e.g. "Save the Whales"), the More button is supposed to show that label while maintaining the "..." three-dots icon. It should use the acronym for the group if available.
Each tile in the Group Selector should display a counter with the number of unread/unanswered “leader” items in that group (we call this “priority zone content”). The backend provides activities in the sort order as described below. The Group Selector counters should always count the number of Priority Zone items. So, if there are 3 priority zone items in Save the Whales and 4 priority zone items in United States, then the All counter shows 7, the 3-person newsfeed icon shows 7, the US icon shows 4, and the Save the Whales icon shows 3.
This logic already existed in the app on the frontend, but I don't think the counters have been working correctly because of the newsfeed data not loading properly. I want to make sure that I gave all of this description so that you could better understand how its supposed to work.
(Backend sorting information below)
Prioritized Zone, listed chronologically
Non-Prioritized Zone, listed chronologically beginning _after _the oldest priority item
Expired Zone, listed chronologically beginning after the oldest non-expired, non-priority zone item.
We have added an endpoint that receives "hashed" e-mail addresses and phone numbers from the user and returns the same hashed e-mail addresses that are associated to an existing Powerline account. This is how we will be able to scan the user's contact address book and see 'who they already know' on Powerline already. The mobile app will scan the user's address book, send hashed e-mail address (or phone numbers) from user's address book to the Powerline server which will return the hashes of existing Powerline users so that the app can display a list of people that the user can request to follow... What does this mean exactly? Add a button to the Main Menu called "Find Friends". When tapped, this button will display the same screen as the Splash screen (Powerline logo) with a button that says "Search Address Book Now". When the Search Address Book Now button is pressed, the app will hash the e-mail addresses and phone numbers in the user's address book and send them to the Powerline server. Any returned hashes will be of registered Powerline users and those registered user's names should be displayed (with the same format/template as My Influences screen that lists group members along with a Follow button next to each person's name). Their avatar and name will link to that user's profile. The follow button will behave just like the follow button in the newsfeed. Igor can clarify the hash method - I believe it's SHA1. Igor has also built the endpoint.
Favorite buttons should toggle yellow/grey.
If yellow, the item appears in the Favorites list (accessed from the Main Menu). If grey, the item disappears from Favorites list.
The Favorites list itself should show all items with Yellow star (there should be no group selector. only a back button to return to the home screen). There should be a back button from Favorites list back to Home screen.
Reference: See #21 for background information.
when I refresh the whole #main page, the post appears.
@jterps08 , is this intended behaviour, or should the new post immidiately appear on step 3.?
User installs app.
User logs in with Facebook or with manual credentials.
User is logged in successfully.
User logs out.
User tries to log back in.
Login process fails.
Add ability to bookmark certain posts for easy viewing later. Should support separate list of Favorites as well as a Favorite button on every single post.
User cannot open any item when tapping on the item in the newsfeed (content does not load on next screen). When user taps item in the newsfeed, it should open the item in the 'question template' screen. This question template screen is currently not loading correctly. It should load posts, petitions, discussions, fundraisers, and events with answer choices (if required), attachments, etc and comments, etc.
The home screen UI is periodically unstable. The title bar element/row (menu button + title) disappears and group selector element/row disappears randomly as well. It is unclear why this happens. It seems the following events trigger this to occur.
Triggered events:
For non-authors, the ability to subscribe/unsubscribe to a post to be notified of new comments.
dev environment
When updating the user's profile, the app provides an error that the "value is already used" for the e-mail address field even if the e-mail address wasn't changed as part of the edit exercise. If I try to update the e-mail address, it still gives me an error.
I wonder if this is related to new user registration with e-mail problem.
To reproduce:
Menu>Edit Profile
Tap "Edit" pencil icon.
Change bio (or any other field)
Tap "Save" floppy-disk icon.
Error occurs for e-mail field during save.
http://localhost:8100/#/micro-petitions/add/long%20petition/
number indication in bottom right corner
I should be able to register with or without Facebook with no problem and stay logged in on the user’s device after the new user's first login. (The user should stay logged in after completing registration).
When I log out manually and log back in, the app should work with no problem. Otherwise, user should stay logged in if "stay logged in" option is true (default true).
Pending completion of issue #12. This will be a button on the Group Members screen that sends follow requests to all members of the group. The button "Follow All Members" will have a confirmation dialog box that says "Send follow request to every group member? (Not recommended!)" If Yes is selected, another note pops up saying "Follow requests sent to all group members. You can manage these in My Influences."
Muting buttons should toggle blue/grey.
For any post the user authored, the notifications bell-icon is blue (on) by default.
For any post the user did not author, the notifications bell-icon is grey (off) by default.
Push notifications for that post should be updated accordingly to backend subscription endpoints. If blue, notifications are on. If grey, notifications are off.
dev environment
The app is not displaying the different groups that the test user is linked to. It is not showing them in the Group Selector (per Issue #35) and it is not showing them in My Groups screen either. The test user is linked to several groups. All of the user's groups should be listed in My Groups screen.
There might be a backend API change that caused this.
The ability to mute or unmute notifications that are default-on for authors around (upvotes/downvotes) and (comments) on the post.
We added an endpoint that returns all members of a group. We need you to add a button to the Group Profile screen called "Group Members". When tapped, this button will display a screen (with same format/template as the My Influences screen) that lists group members along with a Follow button next to each person's name. Their avatar and name will link to that user's profile. The follow button should look like and behave just like the follow button in the newsfeed. Please be sure avatar references incorporate the imgix call appropriately.
Test Plan Inventory: https://docs.google.com/spreadsheets/d/1XN_LdWTkLXAvTMh4YzNohKwvxrrXJH8Y9YigNd0KA4k/edit?usp=sharing
Easier to add the GIFs here than it is to add them to the Wiki...
Joining a group with passcode and required information
Viewing My Representatives Information
Opening a Post and Mentioning a User
Adding a Comment to a Post and Upvoting another user's comment
Dev environment
User taps the "Register/Login with Facebook" button on the login screen.
If user is already registered, tapping this button should log the user in. (It doesn't)
If user is not registered, tapping this button should proceed to registration pages pre-filled with available information (It doesn't).
This is related to the plugin update probably.
For hands-on example of how this feature is supposed to work, reference production app in app stores.
When the user selects "Favorites" from the Main Menu, the Favorites screen should be titled "Favorites" (instead of Powerline) and the Menu '=' icon should be replaced with a back arrow button. It should only be a feed (no group selector, and no icons for newsfeed/social-activity-feed/announcements).
Edit/Delete buttons should appear on any post I authored. They should not appear on posts I did not author.
The UI is supposed to display an Edit (pencil) icon and a Delete (trashcan) icon on any post I have authored. This was previously implemented in PR #15
GET https://api-dev.powerli.ne/api/activities/?offset=0&limit=20&sort=priority 404 (Not Found)
due to this reason the group activity pane displays loading spinner indefinitely.
happens in dev env.
Ability to retrieve and display the metadata around any embedded link on a user's post in the newsfeed
The membership list should appear when user taps on membership count in Group Profile page. Currently no list appears.
The membership list screen should display all group members and allow the user to tap on any individual user listed to view their profile. The membership list screen should also display a Follow All Members button that displays a warning confirmation dialog box when the user taps it. Mockup below - this was previously implemented in PR #26 or #24
User unable to select date during manual registration with e-mail. Must be able to utilize native OS date picker.
Upon logging in with the test credentials, the "All" button is shown in the group selector, but it is missing the town, state/province, and country group buttons as well. It should also show any other groups that the user has joined (including EU or AU groups if registering with an address in Europe or Africa).
The app does not seem to be picking up which groups the user is associated with. The More Button disappears when the user logs out and logs in again.
Will update with screenshot examples
ionic.bundle.min.js:139 Error: [$resource:badcfg] http://errors.angularjs.org/1.4.3/$resource/badcfg?p0=query&p1=object&p2=array&p3=GET&p4=https%3A%2F%2Fapi-dev.powerli.ne%2Fapi%2Fannouncements
at Error (native)
at http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:37:416
at k.then.p.$resolved (http://localhost:8100/lib/angular-resource/angular-resource.min.js:9:354)
at http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:151:182
at n.$eval (http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:165:493)
at n.$digest (http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:163:9)
at n.$apply (http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:166:269)
at l (http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:118:152)
at F (http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:122:187)
at XMLHttpRequest.K.onload (http://localhost:8100/lib/ionic/js/ionic.bundle.min.js:123:220)(anonymous function) @ ionic.bundle.min.js:139
User unable to login with test credentials.
Per the e-mail I forwarded, the Facebook change requires our action by August 6th. We have time, but we may want to address this as part of the fix for #66
in dev env, In home screen in activity feed, I click Reply button under a post.
I am forwarded to this screen http://localhost:8100/#/petition/undefined?focus=add-comment
.
When I insert text into the comment text field and press button, I receive following error:
ionic.bundle.min.js:139 TypeError: Cannot read property 'id' of undefined
at n.$scope.reply (discussion.js:147)
at fn (eval at compile (ionic.bundle.min.js:1), <anonymous>:4:206)
at f (ionic.bundle.min.js:283)
at n.$eval (ionic.bundle.min.js:165)
at n.$apply (ionic.bundle.min.js:166)
at HTMLFormElement.<anonymous> (ionic.bundle.min.js:283)
at HTMLFormElement.dispatch (jquery.js:4435)
at HTMLFormElement.r.handle (jquery.js:4121)
at n (ionic.bundle.min.js:22)
at t (ionic.bundle.min.js:22)
at HTMLDocument.r (ionic.bundle.min.js:22)
I guess the problem is that some object ID is not set properly (undefined
): http://localhost:8100/#/petition/undefined?focus=add-comment
also following error occur in js console at the same time:
GET https://api-dev.powerli.ne/api/micro-petitions/undefined/comments/ 404 (Not Found)
ionic.bundle.min.js:139 TypeError: Cannot read property 'login' of undefined
at Object.login (session.js:273)
at n.$scope.facebookLogin (login.js:51)
at fn (eval at compile (ionic.bundle.min.js:243), <anonymous>:4:230)
at ionic.bundle.min.js:446
at n.$eval (ionic.bundle.min.js:165)
at n.$apply (ionic.bundle.min.js:166)
at HTMLButtonElement.<anonymous> (ionic.bundle.min.js:446)
at HTMLButtonElement.dispatch (jquery.js:4435)
at HTMLButtonElement.r.handle (jquery.js:4121)
at n (ionic.bundle.min.js:22)
at t (ionic.bundle.min.js:22)
at HTMLDocument.r (ionic.bundle.min.js:22)(anonymous function) @ ionic.bundle.min.js:139(anonymous function) @ ionic.bundle.min.js:111$apply @ ionic.bundle.min.js:166(anonymous function) @ ionic.bundle.min.js:446dispatch @ jquery.js:4435r.handle @ jquery.js:4121n @ ionic.bundle.min.js:22t @ ionic.bundle.min.js:22r @ ionic.bundle.min.js:22
Each post in the newsfeed should show the group the post was made next to the user's name (e.g. Jesse Chen | United States of America). Currently the group is not showing in the container correctly. Other UI elements in the container may also not be showing correctly (comment counter)- it is unclear due to lack of newsfeed data.
Notification Action Buttons Scope - For each of these existing notifications, we want to add the following action buttons. Ignore is easy. Open is easy. The others are different and will require the callbacks: 1) Approve a received follow request, 2) Join/accept a received group invite, 3) Upvote a post [boosted or from a followed user], 4) Downvote a post [boosted or from a followed user].
This will likely require the latest version of the https://github.com/phonegap/phonegap-plugin-push plugin.
Ability to view an attached picture to any leader's post.
document cli build procedure(s)
For the UI, add an "Edit" pencil icon and "Delete" trashcan icon in the menu bar that appears under the comment when the user taps "..." button. Deleted comments should show "This post was deleted by author" in comment and "(Deleted)" in the author label (so that comment tree integrity can stay in tact).
5) Membership List w Follow Buttons ($125) - We added an endpoint that returns all members of a group. We need you to add a button to the Group Profile screen called "Group Members". When tapped, this button will display a screen (with same format/template as the My Influences screen) that lists group members along with a Follow button next to each person's name. Their avatar and name will link to that user's profile. The follow button should look like and behave just like the follow button in the newsfeed. Please be sure avatar references incorporate the imgix call appropriately.
User enters account information on page 1 of registration successfully.
Next.
User enters contact information on page 2. User's address fields are "auto-filled" correctly with Google assistance for street address field.
User enters remaining required information correctly.
User taps "register" - error thrown for Zipcode and first e-mail address fields "Correct the errors and try again" (but no error exists).
User unable to complete registration
date of birth date picker is not working in browser (it works in android) and there is not other way to fill in the d.o.b.
in android, I fill in all the fields, click finish registration, and "error occured" alert appers.
this happens on current 'develop' branch, on commit 707e65c.
Dev environment
The user avatars in the newsfeed are messed up. It should show the user's default avatar (loaded through imgix) or the ng-letter avatar if no avatar is present. This seems to be all image avatars throughout the app (My Representatives, My Influences, etc.) - I believe this is an _Imgix_ implementation issue. contact me for imgix info if needed.
PUT https://api-dev.powerli.ne/api/micro-petitions/145 404 (Not Found)
the same for delete.
The API can now support edit and delete of a post under certain conditions. The UI should show "Edit" pencil icon and "Delete" trashcan icon in the right-hand corner (same line as the author's name, see attached). Keep in mind that we will need space for the "Mute" speaker icon for author notifications in the future. These icons are only shown to the post author. Deleted posts are not "shown" in the user's feed. When user taps Edit, the post description label changes to a text field and the Edit label changes to "Save". "Delete" shows "Are you sure you want to Delete?"...
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.