Skip to content

Commit 20a2e6f

Browse files
committed
Add title to Google Classroom Export
1 parent c7a665c commit 20a2e6f

3 files changed

Lines changed: 7 additions & 3 deletions

File tree

src/clients/googleClassroom.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ import qs from 'qs';
22

33
const BASE_URL = 'https://classroom.google.com/u/0/share?';
44

5-
export function createShareToClassroomUrl(snapshotKey) {
5+
export function createShareToClassroomUrl(snapshotKey, title) {
66
const uri = document.createElement('a');
77
uri.href = '/';
88
uri.search = `snapshot=${snapshotKey}`;
9-
return BASE_URL + qs.stringify({url: uri.href});
9+
return BASE_URL + qs.stringify({url: uri.href, title});
1010
}

src/sagas/clients.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import {
1414
projectExportError,
1515
} from '../actions/clients';
1616
import {getCurrentProject} from '../selectors';
17+
import {generateTextPreview} from '../util/compileProject';
1718

1819
export function* createSnapshot() {
1920
const project = yield select(getCurrentProject);
@@ -38,7 +39,8 @@ export function* exportProject({payload: {exportType}}) {
3839
({html_url: url} = yield call(createRepoFromProject, project, user));
3940
} else if (exportType === 'classroom') {
4041
const snapshotKey = yield call(createProjectSnapshot, project);
41-
url = yield call(createShareToClassroomUrl, snapshotKey);
42+
const projectTitle = generateTextPreview(project);
43+
url = yield call(createShareToClassroomUrl, snapshotKey, projectTitle);
4244
}
4345
yield put(projectExported(url, exportType));
4446
} catch (e) {

test/unit/sagas/clients.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,7 @@ test('export to classroom', (t) => {
121121
'https://classroom.google.com/u/0/share?url=http://popcode.org';
122122
const exportType = 'classroom';
123123
const snapshotKey = '123-456';
124+
const projectTitle = 'Page Title';
124125
const scenario = new Scenario();
125126
scenario.logIn();
126127

@@ -136,6 +137,7 @@ test('export to classroom', (t) => {
136137
next(snapshotKey).call(
137138
createShareToClassroomUrl,
138139
snapshotKey,
140+
projectTitle,
139141
);
140142
}
141143

0 commit comments

Comments
 (0)