Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add map of people to publiclab.org/people #1940

Closed
4 tasks done
ebarry opened this issue Jan 9, 2018 · 19 comments
Closed
4 tasks done

Add map of people to publiclab.org/people #1940

ebarry opened this issue Jan 9, 2018 · 19 comments
Labels
break-me-up break up for cleaner code separation, discrete tests, and, easier and iterative collaboration more-detail-please issue lacks proper description and perhaps needs code links or the location of the problem

Comments

@ebarry
Copy link
Member

ebarry commented Jan 9, 2018

Please describe the problem (or idea)

Here are draft steps (still open for edit)

@jywarren jywarren added the break-me-up break up for cleaner code separation, discrete tests, and, easier and iterative collaboration label Jan 9, 2018
@jywarren
Copy link
Member

jywarren commented Jan 9, 2018

I think we could start by combining the "questions" and "answers" shown on profile pages: https://publiclab.org/profile/warren into a single column, and displaying a small map in the right-most column.

If the person has a location marked, it can show that location. If not, we can show a link there to enter your location, which would trigger the location selection modal (same as the map marker icon button in the tag input area at the bottom of the profile page).

@jywarren jywarren added this to the Geographic features milestone Jan 9, 2018
@jywarren
Copy link
Member

jywarren commented Jan 9, 2018

Let's start with a sketch of this interface so we're all on the same page!

@sagarpreet-chadha
Copy link
Contributor

How about this ? Is it fine ?
Display map on the profile page :
screen shot 2018-01-10 at 1 40 57 pm

@jywarren
Copy link
Member

Oh, this looks cool! If the user has the blurred:true tag we should not show a map marker, but if they don't, we can!

We could display a generic map tile with a white button centered over it for people who haven't entered a location yet --

map

In the middle of the tile, the button could say Share your location -- what do you think?

There's also a good overview although a bit technical, of the location blurring, that could be adapted here: https://github.com/publiclab/leaflet-blurred-location/

And for the displayed map let's try for a square -- it'll show up black and white if we use the template here:

https://github.com/publiclab/plots2/tree/master/app/views/map/_leaflet.html.erb

We do need to supply an items local variable to that template when we use it -- i think it'll be: render partial: '', locals: { items: [@profile_user] }

This is exciting!

@sagarpreet-chadha
Copy link
Contributor

Opened PR #1965 .

@jywarren jywarren changed the title [DRAFT] make button for Profile page "Share your location" make button for Profile page "Share your location" Jan 17, 2018
@jywarren
Copy link
Member

I just sorted this a bit and articulated the latter 2 tasks. @sagarpreet-chadha is tackling the first two.

But actually i have a clarification -- on https://publiclab.org/people do we want to show /all/ people? That could rapidly become a lot. Options:

  1. all people (this would be ok at first but rapidly too much)
  2. just the most recently active ones, as that page already lists?
  3. ones near the current user's location (or a random one if you haven't saved a location)?
  4. ones near the most recently self-located active user (trying to be creative here)

Thoughts?

@jywarren jywarren added the more-detail-please issue lacks proper description and perhaps needs code links or the location of the problem label Jan 17, 2018
jywarren pushed a commit that referenced this issue Jan 22, 2018
* Added maps

* Created _userLeaflet.html.erb

* Maps added

* Maps added

* Share Location button added

* Changed local variable to meaningful name

* Static image for sharing location .

* Uploaded static image of map

* Small change

* Static image deleted

* Changes done +code indentation done
@sagarpreet-chadha
Copy link
Contributor

sagarpreet-chadha commented Jan 23, 2018

@jywarren , i was thinking that ,
CASE 1 : if user has shared his/her location , we can show only the nearby people(if any) .
CASE 2: if user has not shared his/her location , we may show 40-50 (maybe more) recent contributors .
What do you think ? Should i break this issue into smaller solve-able parts ? Thanks !

@jywarren jywarren changed the title make button for Profile page "Share your location" Add map of people to publiclab.org/people Jan 23, 2018
@jywarren
Copy link
Member

Hi, i just updated the checklist a bit and renamed. I think we should start by just showing the most recent 100 people. Once this starts to act funny, we can widen the query. How's that sound? Your help would be great!

Feel free to break out sub-issues using parts of this, then!

@sagarpreet-chadha
Copy link
Contributor

@jywarren , should we create an API using the model function self.people_map and rendering a blank map and then calling the API asynchronously OR simply making a query on database like before ?

@jywarren
Copy link
Member

Yes, that sounds perfect to use the API asynchronously! This should result in substantially simpler and more re-used code. Thanks!!

@ebarry
Copy link
Member Author

ebarry commented Jan 24, 2018

Regarding the map of people on /people, the point of having this is to show the worldwide breadth of people. I realize we do not want to load a live view of all people in the database, so how about using a static snapshot that's only updated once every so often, and has clustered markers as the version of the map that initially loads on the page.

Then, if someone wants to browse by map, they could click some text under the map or something. This would load an actual, interactive map that could have different behaviors, like only showing markers at certain zoom levels, or the idea of "most recent" that was proposed above (although that's not a very exciting idea to me)

@jywarren
Copy link
Member

jywarren commented Jan 25, 2018

I think we face a similar issue to some of our tag visualization issues here. Even if we only update periodically, it could take down the site for a minute or two when that happens.

I'm trying to think of what kind of query could handle a couple thousand tags, though.

Liz, what do you think of

  • loading a random set of ~100 people BUT
  • as you zoom in, it'd refresh and load ~100-500 only inside your bounding box, SO
  • the further you zoom in the more likely you are to see /everybody/ for that view?

Would that be a good first step foward? We get a map, all the setup, and then we can continue changing exactly what people are shown on the page.

@jywarren
Copy link
Member

Let's move forward with this plan of showing a max of 100 (most recent) people for a given viewport!

@sagarpreet-chadha
Copy link
Contributor

Okay ! Will start work on this as soon as we get this PR #2044 correct 👍 !

@jywarren
Copy link
Member

jywarren commented Jan 26, 2018 via email

@ebarry
Copy link
Member Author

ebarry commented Jan 29, 2018

great!!! I realize the wiki page on location privacy is still outstanding and it's on my list

jywarren pushed a commit that referenced this issue Feb 1, 2018
* Added maps

* API made for people maps

* Added API url for People map

* Made helper function for People Map API

* Updated self.people_map

* Created _peopleLeaflet.html.erb

* Drupal_user removed

* Indentation done

* search Recent People functionality

* search Recent People helper
@sagarpreet-chadha
Copy link
Contributor

@ebarry , can i write the writeup page on location security ?

@jywarren
Copy link
Member

jywarren commented Feb 2, 2018 via email

@jywarren
Copy link
Member

I'm closing this, as we've completed everything on the list! https://publiclab.org/wiki/location-privacy

Souravirus pushed a commit to Souravirus/plots2 that referenced this issue Mar 12, 2018
)

* Added maps

* API made for people maps

* Added API url for People map

* Made helper function for People Map API

* Updated self.people_map

* Created _peopleLeaflet.html.erb

* Drupal_user removed

* Indentation done

* search Recent People functionality

* search Recent People helper
jywarren pushed a commit to jywarren/plots2 that referenced this issue Mar 20, 2018
* changed reporters for progress bars (publiclab#2123)

* Implement style guide (publiclab#2124)

* Lock paperclip to required version

* Exclude critical files

* Disable magic comment

* Safe navigate on params

* Move Style/FrozenStringLiteralComment to .rubocop.yml

* Rubocop autofix

* Error posting an answer publiclab#1938 (publiclab#1945)

* form http request changes to post

* Tests for long answer using POST request

* Commented test for GET request

* Uncommented the test for large answers

* Update "read more" link on tag pages to "learn more on the wiki page" (fixes publiclab#2112) (publiclab#2130)

* Add people tab to /spam page for moderators(Fixes publiclab#2079) (publiclab#2109)

* Fixes #publiclab#2079

Fixes publiclab#2079
This commit adds active user tab to publiclab.org/spam.

* Add people tab to /spam page for moderators(Fixes publiclab#2079)

* Stats on profile page (publiclab#2131)

* Added links to the profile page

* Stats display

* Delete sunspot.yml.bkp

* PR to disable Turbolinks just in case. (publiclab#2133)

* Update show.html.erb (publiclab#2135)

* Update _sidebar.html.erb for tab display (publiclab#2134)

* Update _sidebar.html.erb

* Update I18n_test.rb

* minor tweaks (publiclab#2126)

* questions in full text search + show 15 results (publiclab#2136)

* Update typeahead_service.rb

* Update typeahead_service.rb

* Update restful_typeahead.js

* Update revision.rb

* Fixed Rubocop offences (publiclab#2127)

* added link to "title suggestion" in comment editor (publiclab#2155)

closes publiclab#2154

* Redundant method fixture (publiclab#2163)

* [wip] publiclab#1951 Add "Join" button to people lists  (publiclab#1954)

* chg: added button to join the powertag group's tag

* add: added check to see if current_user is available before showing the button

* fix: added defined? to check if the curre_user variable is defined

* fix: added defined? check to see if the current_user variable is defined

* chg: modified redirection for the create action

* chg: added button for when the user is not currently logged in

* add: added current_user as a parameter

* fix: added defined? to check if the curre_user variable is defined

* chg: added button for when the user is not currently logged in

* text tweaks

* tweak

* Update user_tags_controller_test.rb

* Update wiki_controller_test.rb

* Update node_shared.rb

* Update application_helper.rb

* Hopefully fix test failures

* Update application_helper.rb

* Dropdown for recently used tag look corrected (publiclab#2145)

* Add map of people to publiclab.org/people publiclab#1940 (publiclab#2158)

* Added maps

* API made for people maps

* Added API url for People map

* Made helper function for People Map API

* Updated self.people_map

* Created _peopleLeaflet.html.erb

* Drupal_user removed

* Indentation done

* search Recent People functionality

* search Recent People helper

* Add Relationship validations and fix tests (No issue opened) (publiclab#2078)

* Refactor code for user's social links

* Fix Relationship tests

* Add validations to Relationship model

* Contributors for wildcards (publiclab#2176)

*  Make tags visible to other users (fixes publiclab#2138) (publiclab#2147)

*  Make tags visible to other users (fixes publiclab#2138)

 publiclab#2138

 The profile tags are currently only visible to the user themselves or
 to admins. The tags should be visible to everyone, while the "add tags" input should maintain its current visibility status (owner or administrator).

* Add a parent param to the tag/tagging partial.

This cleverly hides the input but only if it is rendered inside the
profile view.

* Improve the condition

* If parent is unset, set parent to nil

* Add ruby-2.3.4 alert to README.md (publiclab#2159)

* Add ruby-2.3.0 alert to README.md

* made it as a small note

* change from 2.3.0 to 2.3.4

* small change

* Changed bundle install statement

* RSS feed on tagged content for author pages (publiclab#2161)

* RSS feed

* Added changes

* Added "comment" and "barnstar" headings to profile nav (publiclab#2166)

* Add "comment" and "barnstar" headings to profile nav

fixes publiclab#2165

* minor changes

* User must be logged out to access /login page (publiclab#2171)

* User must be logged out to access /login page

* Update user_sessions_controller.rb

* Some modification to user dropdown menu on navbar (publiclab#2175)

* Some modification to user dropdown menu on navbar

* Added tests

* Remove redundant require of searchform.js in application.js (publiclab#2183)

* Image added (publiclab#2162)

* Header html nesting fixes (publiclab#2199)

* tweak to location:blurred code for profile tags (publiclab#2202)

* List activities for subscriptions/digest (publiclab#2058)

* Function changed

* test changed

* digest page showing all nodes for now

* Query worked

* unit test added

* view updated

* small change

* small change

* functional test added

* Error messages in flash resolved publiclab#2141 (publiclab#2142)

* added >> to 'add research note' button  (publiclab#2195)

* Add &raquo to line 7 for button

* Attempt to fix failing tests

* Fix test failures

* Redundant node_id removed (publiclab#2192)

* update drupal_user.rb to update status of User record (publiclab#2157)

* update drupal_user.rb to update user.status

fixes publiclab#2156

* minor changes

* minor changes

* minor changes

* changes

* added tests

* fixed spam button in notes partial (publiclab#2200)

* Change heading of Weekly Digest page (publiclab#2205)

* Function changed

* test changed

* digest page showing all nodes for now

* Query worked

* unit test added

* view updated

* small change

* small change

* functional test added

* heading change

* migration fix (publiclab#2208)

* fix for migration (publiclab#2210)

* fix for migration

* Update drupal_user.rb

* Update rss.rss.builder (publiclab#2221)

* Update rss.rss.builder

* Update rss.rss.builder

* Update rss.rss.builder

* fixed issue no. 2204 (publiclab#2211)

* Order by subscription fix (publiclab#2139)

* completed function

* sort by subscription added

* Correction

* fix for current_user

* Headings as links

* Blank Map loaded with call to API (Part 2 of publiclab#1934) (publiclab#2044)

* Markers loaded from API

* self.notes_map updated

* API url updated

* https instead of http

* MORE THAN 1 MAP ON A PAGE

* Url generalised

* Indentation done

* Indentation 2

* Typos corrected (publiclab#2218)

* Update README.md (publiclab#2233)

* barnstar tag commenting (publiclab#2223)

* Add tweet button to suscription share button (publiclab#2217)

* Basic/Normal User not able to delete own wiki page (publiclab#2030)

* if condition changed

* condition added

* functional test added

* changes done

* small changes

* test correction

* small changes in test

* indentation improve

* Even treatment of heading on /wiki (publiclab#2232)

* Added non empty validation for search form Closes publiclab#2181 (publiclab#2182)

* Fix subscription error (publiclab#2225)

* Date of promoted comment to answer adjusted (publiclab#2229)

* time change , mailer remove and test update

* comments addition in test

* comments on profile page fixed (publiclab#2197)

* comments on profile page fixed

fixes publiclab#2196

* minor changes

* written tests

* Added tests (publiclab#2207)

* Redundant getting started removed (publiclab#2235)

* RSS for Tag show with image correction (publiclab#2213)

* RSS for Tag with image correction

* Image links updated

* Updated rss

* Not to show marker on profile page map if tag blurred:true exists . publiclab#2230 (publiclab#2245)

* Indentation + blurred:true tag

Removes marker if the blurred:true tag exists .

* remove marker feature

* fixes to Dangerfile (puts vs. fail) (publiclab#2255)

* Fixes to markdown templates (publiclab#2240)

* Update first-timers-issue-template.md

* Update first-timers-issue-template.md

* Update questions_controller.rb (publiclab#2266)

* Profile tags corrected (publiclab#2270)

* Fixed the bug where profile is not shown on small screens (publiclab#2269)

* Link text modified (publiclab#2249)

* Added pagination for questions (publiclab#2244)

* routes changed (publiclab#2236)

* Change default time zone of RSS for event calendar (publiclab#2279)

* Unnecessary hr removed (publiclab#2283)

* Question error message duplicacy removed (publiclab#2273)

* Update PULL_REQUEST_TEMPLATE.md

* Include mysql configuration file (supersedes publiclab#1428) (publiclab#2320)

* add glyphicons to question-page (publiclab#2319)

* added link to questions on home page (publiclab#2222)

* added link to questions on home page

closes publiclab#2188

* minor changes

* Update home.html.erb

* removed _list partial and unwanted code [issue publiclab#2300] (publiclab#2311)

* removed _list partial and unwanted code

* re-added list partial

* Update CONTRIBUTING.md

* add a feature block to signup form (publiclab#2267)

* Center People Map coordiates (publiclab#2268)

* Tool Tips : regular edit pencil-Edit this wiki page , Delete -Delete this wiki page ,etherpad -practice in a real time doc , revisions-View previous versions  (publiclab#2212)

* Update _header.html.erb

added 
1 .Tool tip for regular edit pencil
2 .Tool tip for delete wiki page
3.Tool tip for revisions

* Update _header.html.erb

* Update _header.html.erb

* Update _header.html.erb

* adding  "delete this wiki page" tooltip

* fixed issue#2324 problem in display of gliphicons (publiclab#2325)

* added up/down arrow icons on sortable headers on tags page (publiclab#2338)

* add missing glyphicons (publiclab#2316)

* Improve readibility of tags page by removing sidebar and set it to full-width (publiclab#2344)

* added count of research notes and comments on profile page (publiclab#2263)

* added count of research notes and comments on profile page

fixes publiclab#2262

* minor changes

* align read more button to the center (publiclab#2317)

* Redundant gemfile.new deleted (publiclab#2349)

* Chat should hover on hovering (publiclab#2342)

* fixed positioning of social media buttons in wiki page (publiclab#2329)

* Edit home action in home controller (publiclab#2327)

* Remove duplicate ids in signin and signup page (publiclab#2238)

* Update show.html.erb

* Digest optimization to exclude tag additions  (publiclab#2351)

* proper digest

* test optimization

* query update

* Draft creation for nodes  (publiclab#2308)

* Status method

* controller changed

* test added for access

* update rubocop file

* fixing test affected by new fixture

* update en.yml

* Updated the social media icons to use  to increase compatibility with all browsers. (publiclab#2348)

* Added functional test for subscribing to a tag. (publiclab#2286)

* fix autolinking of comments (publiclab#2359)

* Added scroll to top in footer (publiclab#2251)

* banned users are visible to /people page for admin (publiclab#2247)

* banned users are visible to /people page for admin

fixes publiclab#2246

* test fixes

* Update wiki_controller.rb (publiclab#2362)

Resolves issue publiclab#2310

* added links for location privacy help page publiclab#2346 (publiclab#2360)

* added links in appropriate places for new location privacy help page

* fixed indentations

* removed gemfile.lock put in git ignore

* fixed gemlock file

* fixed dangling <p> tag removed gemfile.lock from .gitignore [WIP] how do i remove gemfile.lock from the PR

* removed gemfile.lock from local

* changes to gemfile.lcok

* added new lines to the end of changed files

* fixed search error (publiclab#2288)

* Update show.html.erb

* Wiki pages with CRUD as title should not be published (publiclab#2323)

* Wiki pages with CRUD as title should not be published

* Tests refactored

* research and dashboard corrected (publiclab#2302)

* Add warning message re wildcard search (publiclab#2180)

* combined changes by @ina-mastabba

* re-add missing section

* Added initial check for valid email on password reset (publiclab#2315)

* Added initial check through jquery

* Made the code more object oriented

* Modified the code according to ES6 rules

* Changes tag follow popover z-index (publiclab#2253)

* Change /questions page layout (publiclab#2358)

The /questions page was displaying too much information. Now the
page has a clean layout.

* Migration for changing comment status (publiclab#2373)

* migration for comments

* schema.db.example changed

* version updated

* Comment spam moderation Part 2 (publiclab#2305)

* Controller and model method for marking

* Publish comment method added

* test for marking comment

* tests for publish comment

* Small changes

* controller changed

* updated test as per new comment system

* Update DATA_MODEL.md

* Update rss.rss.builder

* Shows Autocomplete drop-down (publiclab#2384)

* ga fixes (publiclab#2390)

* add tab buttons to tag_pages (publiclab#2385)

* Delete location_tags.js (publiclab#2391)

* Delete location_tags.js

* Update application.js

* Update _like.html.erb

* Update per instructions (publiclab#2403)

publiclab#2402

* Adding feature to allow raw HTML pages (publiclab#2406)

* Update show.html.erb

* Update revision.rb

* Update node.rb

* Added omniauth gem (publiclab#2381)

* Pagination and sorting of digest by recency (publiclab#2374)

* paginate and sort

* paginated for 100 items

* Delete README.rdoc (publiclab#2386)

* Replace spaces with hyphens (list of suggested tags and query submitted in the form) (publiclab#2380)

* fix issue publiclab#2335

Fix issue publiclab#2335, replacing spaces with hyphens as people type.

* fixing publiclab#2335

fixes publiclab#2335, replacing all spaces with hyphens

* Update _comment.html.erb (publiclab#2387)

* Added search validation for wiki sidebar search (publiclab#2276)

* Update subscription_mailer.rb (publiclab#2407)

* Update subscription_mailer.rb

* Update subscription_mailer_test.rb

* "Show more" sort bug (publiclab#2416)

* Update _notes.html.erb render "Show # More" as footer - separately from rows

* Update grid.js to detach table footer before sorting and (re)append it after sorting

* Update _header.html.erb (publiclab#2424)

added link to /kits, added link to /tags, changed the "meet people" text to "attend an event", changed order of menu items.

* add sort functionality to tag_for_author questions (publiclab#2376)

* Add larger image to profile page (publiclab#2415)

* add sign removed (publiclab#2434)

* mailer test for barnstar (publiclab#2433)

* Corrected the mistake (publiclab#2409)

* Home controller tests - test redirect and title (publiclab#2371)

* Test homepage redirects to dashboard if user is logged in

* Add title check to homepage test

* added recent notes page (publiclab#2296)

* added recent notes page

* minor tweaks

* add functional tests

* Profile page likes are now rendered on the same page (publiclab#2293)

* Comment and sent email when co-author added (publiclab#2259)

* barnstar tag commenting

* comment addotion on co-author

* mailer for coauthor created

* mailer updated

* mailer finalized

* testing coauthor

* Co-author test done

* tag addition test

* users page sorting with headers completed with backend (publiclab#2355)

* Update Dockerfile (publiclab#2472)

* Node deletion problem while removing spam solved (publiclab#2450)

* solved for answer deleting node

* node optimized

* tests added

* new indices for impressionist (publiclab#2462)

* Add comment icon (publiclab#2442)

* Add methods to User model for verifying user roles (publiclab#2448)

* Add methods to User model for user roles

* Add a comment

* Update _contributors.html.erb to fix note count (publiclab#2479)

* Update _contributors.html.erb

* Update tag_controller_test.rb

* Update _contributors.html.erb

* Minor refactor of Home controller 'activity' (publiclab#2438)

* Minor refactor of Home controller 'activity'

* Fix indentation

* Development script for quick and reliable setup (publiclab#2395)

* Development setup script

* Fixed a typo

* Fixes tag controller "suggested tags" action (publiclab#2477)

issue publiclab#2458

* Update _contributors.html.erb (publiclab#2485)

* Update show.html.erb (publiclab#2487)

* Questions page text tweaks (publiclab#2490)

* Updated application_controller.rb to fix moderation alert message (publiclab#2481)

* Updated application_controller.rb to fix moderation alert message

fixes issue publiclab#2470

* Updated notes_controller_test.rb

* Update notes_controller_test.rb

* Update notes_controller_test.rb

* trigger reload of profile page on adding location tags (publiclab#2350)

* New blog design(issue#2454) (publiclab#2484)

* Replace blog link with stories from Read Stories button (Fixes issue publiclab#2454)

* changed button content(issue#2454)

* Update home.html.erb

* Remove some redundant tests from Home controller (publiclab#2435)

* initial Rails 4.2 port

* changing over to deliver_now for mails

* updated Gemfile

* truncating fixture field

* truncating fixture field

* nother fixture fix! fix!

* nother fixture fix! fix!

* last try with test dates for maps

* truncation in model

* strict: false in database.yml

* back to before_save filter

* back to before_save filter

* deliver_now

* strict back off...

* strict back off...
SrinandanPai pushed a commit to SrinandanPai/plots2 that referenced this issue May 5, 2019
* Added maps

* Created _userLeaflet.html.erb

* Maps added

* Maps added

* Share Location button added

* Changed local variable to meaningful name

* Static image for sharing location .

* Uploaded static image of map

* Small change

* Static image deleted

* Changes done +code indentation done
SrinandanPai pushed a commit to SrinandanPai/plots2 that referenced this issue May 5, 2019
)

* Added maps

* API made for people maps

* Added API url for People map

* Made helper function for People Map API

* Updated self.people_map

* Created _peopleLeaflet.html.erb

* Drupal_user removed

* Indentation done

* search Recent People functionality

* search Recent People helper
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
break-me-up break up for cleaner code separation, discrete tests, and, easier and iterative collaboration more-detail-please issue lacks proper description and perhaps needs code links or the location of the problem
Projects
None yet
Development

No branches or pull requests

3 participants