Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
A
arsnova-lite
Manage
Activity
Members
Labels
Plan
Issues
24
Issue boards
Milestones
Wiki
Code
Merge requests
2
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Help
Help
Support
GitLab documentation
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Privacy
Imprint
Contact
Snippets
Groups
Projects
Show more breadcrumbs
ARSnova
arsnova-lite
Merge requests
!275
Fix async handling and if-else
Code
Review changes
Check out branch
Download
Patches
Plain diff
Merged
Fix async handling and if-else
fix-excel-export
into
master
Overview
1
Commits
1
Pipelines
1
Changes
1
Merged
Tom Käsler
requested to merge
fix-excel-export
into
master
5 years ago
Overview
1
Commits
1
Pipelines
1
Changes
1
Expand
Closes
#313 (closed)
0
0
Merge request reports
Compare
master
master (base)
and
latest version
latest version
0b085330
1 commit,
5 years ago
1 file
+
17
−
18
Expand all files
Inline
Compare changes
Side-by-side
Inline
Show whitespace changes
Show one file at a time
src/app/components/creator/_dialogs/room-edit/room-edit.component.ts
+
17
−
18
Options
@@ -103,23 +103,23 @@ export class RoomEditComponent implements OnInit {
this
.
commentService
.
getComments
(
this
.
editRoom
.
id
)
.
subscribe
(
comments
=>
{
this
.
comments
=
comments
;
const
exportComments
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
comments
));
let
csv
:
string
;
let
keyFields
=
''
;
let
valueFields
=
''
;
keyFields
=
Object
.
keys
(
exportComments
[
0
]).
slice
(
3
).
join
(
delimiter
)
+
'
\r\n
'
;
exportComments
.
forEach
(
element
=>
{
element
.
body
=
'
"
'
+
element
.
body
.
replace
(
/
[\r\n]
/g
,
'
'
).
replace
(
/ +/g
,
'
'
).
replace
(
/"/g
,
'
""
'
)
+
'
"
'
;
valueFields
+=
Object
.
values
(
element
).
slice
(
3
).
join
(
delimiter
)
+
'
\r\n
'
;
});
csv
=
keyFields
+
valueFields
;
const
myBlob
=
new
Blob
([
csv
],
{
type
:
'
text/csv
'
});
const
link
=
document
.
createElement
(
'
a
'
);
const
fileName
=
'
comments_
'
+
date
+
'
.csv
'
;
link
.
setAttribute
(
'
download
'
,
fileName
);
link
.
href
=
window
.
URL
.
createObjectURL
(
myBlob
);
link
.
click
();
});
const
exportComments
=
JSON
.
parse
(
JSON
.
stringify
(
this
.
comments
));
let
csv
:
string
;
let
keyFields
=
''
;
let
valueFields
=
''
;
keyFields
=
Object
.
keys
(
exportComments
[
0
]).
slice
(
3
).
join
(
delimiter
)
+
'
\r\n
'
;
exportComments
.
forEach
(
element
=>
{
element
.
body
=
'
"
'
+
element
.
body
.
replace
(
/
[\r\n]
/g
,
'
'
).
replace
(
/ +/g
,
'
'
).
replace
(
/"/g
,
'
""
'
)
+
'
"
'
;
valueFields
+=
Object
.
values
(
element
).
slice
(
3
).
join
(
delimiter
)
+
'
\r\n
'
;
});
csv
=
keyFields
+
valueFields
;
const
myBlob
=
new
Blob
([
csv
],
{
type
:
'
text/csv
'
});
const
link
=
document
.
createElement
(
'
a
'
);
const
fileName
=
'
comments_
'
+
date
+
'
.csv
'
;
link
.
setAttribute
(
'
download
'
,
fileName
);
link
.
href
=
window
.
URL
.
createObjectURL
(
myBlob
);
link
.
click
();
}
onExport
(
exportType
:
string
):
void
{
@@ -129,8 +129,7 @@ export class RoomEditComponent implements OnInit {
const
timestamp
=
dateString
+
'
_
'
+
timeString
;
if
(
exportType
===
'
comma
'
)
{
this
.
exportCsv
(
'
,
'
,
timestamp
);
}
if
(
exportType
===
'
semicolon
'
)
{
}
else
if
(
exportType
===
'
semicolon
'
)
{
this
.
exportCsv
(
'
;
'
,
timestamp
);
}
}