Commit Graph
130 Commits
Author SHA1 Message Date
Alfredo Sumaran 340aa444b7 Add tests for dates on tooltips 2016-06-09 14:38:24 -05:00
Connor Shea 026b7abc5a Attempt to fix the user page. 2016-06-01 19:42:49 -06:00
Jacob Schatz 3d009f7785 Merge branch 'updated-contrib-calendar' into 'master'
POC: Updated contrib calendar

In an effort to cut down the JS file size - i've removed the heatmap calendar used for the contributing calendar on users profiles. We already have d3 on the page so why not use it instead of using a library which uses it?

![Screen_Shot_2016-04-27_at_11.08.41](/uploads/64c40f0c766f800fd0e33ac8be7f9644/Screen_Shot_2016-04-27_at_11.08.41.png)

cc. @jschatz1 

See merge request !3944
2016-05-25 23:29:41 +00:00
Robert Speicher 66cebb6f61 Remove event_to_atom helper 2016-05-23 12:37:40 -04:00
Phil Hughes 93c0bb8041 Fixed issue with selected date not loading correctly
Added loading icon to selected date box
2016-05-16 12:22:17 +01:00
Phil Hughes 18b361cf80 Group the contributing calendar by day
This aligns the boxes correctly with the day on the left side of the calendar
2016-05-16 12:22:17 +01:00
Phil Hughes 36fdbc6edb Updated contrib map away from cal heat map 2016-05-16 12:19:30 +01:00
Long Nguyen 29089352e3 Routing refactoring 2016-05-08 20:48:07 +07:00
Long Nguyen 3d4627047a Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ce into issue_15572_snippets_tab_under_user_profile 2016-05-08 15:30:51 +07:00
Long Nguyen ffda8a1a0e user routings refactor 2016-05-08 15:27:33 +07:00
Long Nguyen 5f60841d7e Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ce into issue_15572_snippets_tab_under_user_profile 2016-05-05 15:07:50 +07:00
Annabel Dunstone 7878eb9fa6 Start builds redesign 2016-05-04 16:45:37 -05:00
Jacob Schatz 8be1118aa5 Merge branch 'clean-user-profile-classes' into 'master'
Remove unused .contributed-projects class

While working on #13401 and trying to add a new tab to the user profile
page, I came across this. I noticed that the `contributed-projects`
class was only being used in order to select the div in the tests. For
consistency with the other tabs, I decided to remove this class and use
the div's id for the selector.

See merge request !3945
2016-05-04 18:34:34 +00:00
Long Nguyen c0f02aad4a Add snippet tab under user profile 2016-05-02 16:37:12 +07:00
Karlo Soriano c8187738a2 Remove unused .contributed-projects class
While working on #13401 and trying to add a new tab to the user profile
page, I came across this. I noticed that the `contributed-projects`
class was only being used in order to select the div in the tests. For
consistency with the other tabs, I decided to remove this class and use
the div's id for the selector.
2016-04-27 19:36:04 +08:00
Karlo Soriano 40b0afddbf Add JS prefix to user tab classes
I'm not entirely sure if this project uses the `js-` prefix for
classes that are for js purposes only. But as I was working on a
feature, I noticed that these classes were those kind of classes.
2016-04-26 21:54:40 +08:00
Phil Hughes fe603d4d31 Removed aside toggle on profile pages
Closes #13943
2016-04-18 17:53:38 +01:00
connorshea 6a0f839941 Add a missing Oxford comma in some text on the Activity graph.
Resolves #14668. [ci skip]
2016-04-08 13:32:17 -06:00
Arinde Eniola 932c2f59cb hide user profile activity graph on mobile and enable horizontal scroll for medium screens 2016-04-01 00:07:59 +01:00
Alfredo Sumaran 3c9e860f5e Provide defaults and make sure we everything is container into a parent element 2016-03-02 14:08:03 -05:00
Alfredo Sumaran 8b9a94af79 Add required classname for spec 2016-03-01 17:41:50 -05:00
Alfredo Sumaran 3b489ad1d7 Rename attribute from url to href for consistency 2016-03-01 12:45:20 -05:00
Alfredo Sumaran 2816a227ae Specify path to be used for @Page to load user activity 2016-03-01 12:41:48 -05:00
Alfredo Sumaran f0b8779047 Make url and actions to be the same name 2016-03-01 11:43:22 -05:00
Alfredo Sumaran 48ae8ef165 Activate tab according URL 2016-03-01 11:20:52 -05:00
Alfredo Sumaran ef9b78c1e3 Initialize User class on the view 2016-03-01 11:19:05 -05:00
Alfredo Sumaran c6b27550c8 Let User class handle resource loading 2016-02-29 19:10:11 -05:00
Alfredo Sumaran 703ea298d6 Tidy html 2016-02-29 16:40:34 -05:00
Josh Frye cc9f93f9d2 Add routes and actions for dynamic tab loading 2016-02-29 08:24:07 -05:00
connorshea bb0f5be077 Improve the formatting for the user page bio
- Separates the User page bio from the username and account creation
date.
- Separates the pseudo-selector adding a Middle Dot out from the
`profile-link-holder` class and into a `middle-dot-divider` class.

Resolves #13406.

See merge request !2827.
2016-02-23 16:50:48 -07:00
Yorick Peterse de7c9c7ab1 Use Atom update times of the first event
By simply loading the first event from the already sorted set we save
ourselves extra (slow) queries just to get the latest update timestamp.
This removes the need for Event.latest_update_time and significantly
reduces the time needed to build an Atom feed.

Fixes gitlab-org/gitlab-ce#12415
2016-01-27 10:33:33 +01:00
Josh Frye 2d3655cd14 sanitize user supplied input. 2016-01-16 10:49:51 -05:00
Josh Frye c70ed7f2cd Autofill abuse message text with user url. Closes #2838 2016-01-16 10:47:12 -05:00
Dmitriy Zaporozhets 49c310e45c Fix missing padding for user/group pages
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-01-14 16:42:25 +01:00
Dmitriy Zaporozhets 0673fad893 Apply new layout to user page
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-01-13 16:26:40 +01:00
Dmitriy Zaporozhets 03090a88d8 Replace all navigation menu with nav-links class
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-01-13 15:58:04 +01:00
Robert Speicher 4408dc0bd1 Use xmlschema where even more appropriate! 2016-01-07 20:01:08 -05:00
Robert Speicher 6344493655 Use to_s(:iso8601) where appropriate 2016-01-07 20:01:08 -05:00
Robert Speicher fa36749bce Add two custom Date/Time conversion formats 2016-01-07 20:01:08 -05:00
Robert Speicher 59305715e9 Remove stamp gem
Closes #5908
2016-01-07 16:28:33 -05:00
Robert Speicher b26eb782f5 Add page descriptions and images
A limited number of pages have defined their own descriptions, but
otherwise we default to the Project's description (if `@project` is
set), or the old `brand_title` fallback.

The image will either be the uploaded project icon (never a generated
one), the user's uploaded icon or Gravatar, or, finally, the GitLab
logo.
2015-12-23 16:56:27 -05:00
Dmitriy Zaporozhets 51c8d037d3 Make profile navigation full wide
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-12-11 20:39:26 +01:00
Douwe Maan 1a94211165 Remove pointless explanation for user tabs 2015-12-07 13:55:30 +01:00
Douwe Maan 03277af65d Use standard style for tabs in profile view 2015-12-02 14:57:11 +01:00
Yorick Peterse 054f2f98ed Faster way of obtaining latest event update time
Instead of using MAX(events.updated_at) we can simply sort the events in
descending order by the "id" column and grab the first row. In other
words, instead of this:

    SELECT max(events.updated_at) AS max_id
    FROM events
    LEFT OUTER JOIN projects   ON projects.id   = events.project_id
    LEFT OUTER JOIN namespaces ON namespaces.id = projects.namespace_id
    WHERE events.author_id IS NOT NULL
    AND events.project_id IN (13083);

we can use this:

    SELECT events.updated_at AS max_id
    FROM events
    LEFT OUTER JOIN projects   ON projects.id   = events.project_id
    LEFT OUTER JOIN namespaces ON namespaces.id = projects.namespace_id
    WHERE events.author_id IS NOT NULL
    AND events.project_id IN (13083)
    ORDER BY events.id DESC
    LIMIT 1;

This has the benefit that on PostgreSQL a backwards index scan can be
used, which due to the "LIMIT 1" will at most process only a single row.
This in turn greatly speeds up the process of grabbing the latest update
time. This can be confirmed by looking at the query plans. The first
query produces the following plan:

    Aggregate  (cost=43779.84..43779.85 rows=1 width=12) (actual time=2142.462..2142.462 rows=1 loops=1)
      ->  Index Scan using index_events_on_project_id on events  (cost=0.43..43704.69 rows=30060 width=12) (actual time=0.033..2138.086 rows=32769 loops=1)
            Index Cond: (project_id = 13083)
            Filter: (author_id IS NOT NULL)
    Planning time: 1.248 ms
    Execution time: 2142.548 ms

The second query in turn produces the following plan:

    Limit  (cost=0.43..41.65 rows=1 width=16) (actual time=1.394..1.394 rows=1 loops=1)
      ->  Index Scan Backward using events_pkey on events  (cost=0.43..1238907.96 rows=30060 width=16) (actual time=1.394..1.394 rows=1 loops=1)
            Filter: ((author_id IS NOT NULL) AND (project_id = 13083))
            Rows Removed by Filter: 2104
    Planning time: 0.166 ms
    Execution time: 1.408 ms

According to the above plans the 2nd query is around 1500 times faster.
However, re-running the first query produces timings of around 80 ms,
making the 2nd query "only" around 55 times faster.
2015-11-18 13:02:43 +01:00
Alex Jordan 3300db70ff Rewrite HTTP links to force TLS, where possible 2015-11-16 16:50:05 -08:00
Jason Lee 18cb430f79 Replace CoffeeScript block into JavaScript in Views.
For example view: shared/issuable/_context

CoffeeScript: 190ms
JavaScript: 19.7ms
2015-11-10 19:17:37 +08:00
Dmitriy Zaporozhets c5d637b2ca Improvements to profile page UI
* add separator between tabs
* show project avatars
* fix tooltip offset on user calendar
* remove gray hover for tabs

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-04 14:13:25 +01:00
Dmitriy Zaporozhets 4d7f00fdea Apply new design for user profile page
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-03 15:32:40 +01:00
Dmitriy Zaporozhets ab129f7b23 Improve profile page UI
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-03 14:00:41 +01:00