refactor async calendar data
This commit is contained in:
parent
651bf36cc5
commit
339baf8f5d
|
@ -1,7 +1,5 @@
|
||||||
import ActivityCalendar from './activity_calendar';
|
|
||||||
import User from './user';
|
import User from './user';
|
||||||
|
|
||||||
// use legacy exports until embedded javascript is refactored
|
// use legacy exports until embedded javascript is refactored
|
||||||
window.Calendar = ActivityCalendar;
|
|
||||||
window.gl = window.gl || {};
|
window.gl = window.gl || {};
|
||||||
window.gl.User = User;
|
window.gl.User = User;
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
/* eslint-disable max-len, space-before-function-paren, no-underscore-dangle, consistent-return, comma-dangle, no-unused-vars, dot-notation, no-new, no-return-assign, camelcase, no-param-reassign, class-methods-use-this */
|
/* eslint-disable max-len, space-before-function-paren, no-underscore-dangle, consistent-return, comma-dangle, no-unused-vars, dot-notation, no-new, no-return-assign, camelcase, no-param-reassign, class-methods-use-this */
|
||||||
|
|
||||||
|
import ActivityCalendar from './activity_calendar';
|
||||||
|
|
||||||
/*
|
/*
|
||||||
UserTabs
|
UserTabs
|
||||||
|
|
||||||
|
@ -60,6 +62,15 @@ content on the Users#show page.
|
||||||
</div>
|
</div>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
const CALENDAR_TEMPLATE = `
|
||||||
|
<div class="clearfix calendar">
|
||||||
|
<div class="js-contrib-calendar"></div>
|
||||||
|
<div class="calendar-hint">
|
||||||
|
Summary of issues, merge requests, push events, and comments
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
`;
|
||||||
|
|
||||||
export default class UserTabs {
|
export default class UserTabs {
|
||||||
constructor ({ defaultAction, action, parentEl }) {
|
constructor ({ defaultAction, action, parentEl }) {
|
||||||
this.loaded = {};
|
this.loaded = {};
|
||||||
|
@ -147,9 +158,21 @@ export default class UserTabs {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
const $calendarWrap = this.$parentEl.find('.user-calendar');
|
const $calendarWrap = this.$parentEl.find('.user-calendar');
|
||||||
$calendarWrap.load($calendarWrap.data('href'));
|
const calendarPath = $calendarWrap.data('calendarPath');
|
||||||
|
const calendarActivitiesPath = $calendarWrap.data('calendarActivitiesPath');
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
dataType: 'json',
|
||||||
|
type: 'GET',
|
||||||
|
url: calendarPath,
|
||||||
|
success: (activityData) => {
|
||||||
|
$calendarWrap.html(CALENDAR_TEMPLATE);
|
||||||
|
new ActivityCalendar(activityData, calendarActivitiesPath);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
new gl.Activities();
|
new gl.Activities();
|
||||||
return this.loaded['activity'] = true;
|
this.loaded['activity'] = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
toggleLoading(status) {
|
toggleLoading(status) {
|
||||||
|
|
|
@ -73,10 +73,7 @@ class UsersController < ApplicationController
|
||||||
end
|
end
|
||||||
|
|
||||||
def calendar
|
def calendar
|
||||||
calendar = contributions_calendar
|
render json: contributions_calendar.activity_dates
|
||||||
@activity_dates = calendar.activity_dates
|
|
||||||
|
|
||||||
render 'calendar', layout: false
|
|
||||||
end
|
end
|
||||||
|
|
||||||
def calendar_activities
|
def calendar_activities
|
||||||
|
|
|
@ -1,9 +0,0 @@
|
||||||
.clearfix.calendar
|
|
||||||
.js-contrib-calendar
|
|
||||||
.calendar-hint
|
|
||||||
Summary of issues, merge requests, push events, and comments
|
|
||||||
:javascript
|
|
||||||
new Calendar(
|
|
||||||
#{@activity_dates.to_json},
|
|
||||||
'#{user_calendar_activities_path}'
|
|
||||||
);
|
|
|
@ -105,7 +105,7 @@
|
||||||
.tab-content
|
.tab-content
|
||||||
#activity.tab-pane
|
#activity.tab-pane
|
||||||
.row-content-block.calender-block.white.second-block.hidden-xs
|
.row-content-block.calender-block.white.second-block.hidden-xs
|
||||||
.user-calendar{ data: { href: user_calendar_path } }
|
.user-calendar{ data: { calendar_path: user_calendar_path(@user, :json), calendar_activities_path: user_calendar_activities_path } }
|
||||||
%h4.center.light
|
%h4.center.light
|
||||||
%i.fa.fa-spinner.fa-spin
|
%i.fa.fa-spinner.fa-spin
|
||||||
.user-calendar-activities
|
.user-calendar-activities
|
||||||
|
|
Loading…
Reference in New Issue