moodle2cc 0.2.2 → 0.2.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Changelog +3 -0
- data/lib/moodle2cc/moodle2/parsers/forum_parser.rb +29 -28
- data/lib/moodle2cc/version.rb +1 -1
- data/spec/moodle2cc/moodle2/parsers/forum_parser_spec.rb +1 -1
- data/spec/moodle2cc/moodle2/parsers/parser_helper_spec.rb +2 -2
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/calendar.xml +0 -0
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/comments.xml +0 -0
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/completion.xml +0 -0
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/filters.xml +0 -0
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/grades.xml +0 -0
- data/test/fixtures/moodle2/backup/activities/{forum_1/forum.xml → hsuforum_1/hsuforum.xml} +3 -3
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/inforef.xml +0 -0
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/module.xml +1 -1
- data/test/fixtures/moodle2/backup/activities/{forum_1 → hsuforum_1}/roles.xml +0 -0
- data/test/fixtures/moodle2/backup/moodle_backup.xml +6 -6
- metadata +20 -20
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: efde84072c49c29d27500a5561765dfc44e6efd1
|
4
|
+
data.tar.gz: 0d4dccad78f1b425c6a2a8a07909370d8eb14648
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4bd0763399e9e6ccf748452a816760ee551f449d50104996b59c724215c08b329bb91417c122c7d0eeb6d5de0cb2577da1b96c317cd4dbb9c71d36ccd077b75b
|
7
|
+
data.tar.gz: f5a6678f1079198e8d70dbd43f134a619f9ac88395dd12015ba83bb852745c11cf2d66a28027a6b57cc737565b22ad70147929f99902c4dca1c33f7252b751f3
|
data/Changelog
CHANGED
@@ -2,48 +2,49 @@ module Moodle2CC::Moodle2::Parsers
|
|
2
2
|
class ForumParser
|
3
3
|
include ParserHelper
|
4
4
|
|
5
|
-
FORUM_XML = 'forum.xml'
|
6
5
|
FORUM_MODULE_NAME = 'forum'
|
6
|
+
HSU_MODULE_NAME = 'hsuforum'
|
7
7
|
|
8
8
|
def initialize(backup_dir)
|
9
9
|
@backup_dir = backup_dir
|
10
10
|
end
|
11
11
|
|
12
12
|
def parse
|
13
|
-
|
14
|
-
|
13
|
+
activity_directories(@backup_dir, FORUM_MODULE_NAME).map { |dir| parse_forum(dir, FORUM_MODULE_NAME) } +
|
14
|
+
activity_directories(@backup_dir, HSU_MODULE_NAME).map { |dir| parse_forum(dir, HSU_MODULE_NAME) }
|
15
15
|
end
|
16
16
|
|
17
17
|
private
|
18
18
|
|
19
|
-
def parse_forum(forum_dir)
|
19
|
+
def parse_forum(forum_dir, module_name)
|
20
|
+
xml_file = "#{module_name}.xml"
|
20
21
|
forum = Moodle2CC::Moodle2::Models::Forum.new
|
21
22
|
activity_dir = File.join(@backup_dir, forum_dir)
|
22
|
-
File.open(File.join(activity_dir,
|
23
|
+
File.open(File.join(activity_dir, xml_file)) do |f|
|
23
24
|
forum_xml = Nokogiri::XML(f)
|
24
|
-
forum.id = forum_xml.at_xpath(
|
25
|
-
forum.module_id = forum_xml.at_xpath(
|
26
|
-
forum.name = parse_text(forum_xml,
|
27
|
-
forum.type = parse_text(forum_xml,
|
28
|
-
forum.intro = parse_text(forum_xml,
|
29
|
-
forum.intro_format = parse_text(forum_xml,
|
30
|
-
forum.assessed = parse_text(forum_xml,
|
31
|
-
forum.assess_time_start = parse_text(forum_xml,
|
32
|
-
forum.assess_time_finish = parse_text(forum_xml,
|
33
|
-
forum.scale = parse_text(forum_xml,
|
34
|
-
forum.max_bytes = parse_text(forum_xml,
|
35
|
-
forum.max_attachments = parse_text(forum_xml,
|
36
|
-
forum.force_subsscribe = parse_text(forum_xml,
|
37
|
-
forum.tracking_type = parse_text(forum_xml,
|
38
|
-
forum.rss_type = parse_text(forum_xml,
|
39
|
-
forum.rss_articles = parse_text(forum_xml,
|
40
|
-
forum.time_modified = parse_text(forum_xml,
|
41
|
-
forum.warn_after = parse_text(forum_xml,
|
42
|
-
forum.block_after = parse_text(forum_xml,
|
43
|
-
forum.block_period = parse_text(forum_xml,
|
44
|
-
forum.completion_discussions = parse_text(forum_xml,
|
45
|
-
forum.completion_replies = parse_text(forum_xml,
|
46
|
-
forum.completion_posts = parse_text(forum_xml,
|
25
|
+
forum.id = forum_xml.at_xpath("/activity/#{module_name}/@id").value
|
26
|
+
forum.module_id = forum_xml.at_xpath("/activity/@moduleid").value
|
27
|
+
forum.name = parse_text(forum_xml, "/activity/#{module_name}/name")
|
28
|
+
forum.type = parse_text(forum_xml, "/activity/#{module_name}/type")
|
29
|
+
forum.intro = parse_text(forum_xml, "/activity/#{module_name}/intro")
|
30
|
+
forum.intro_format = parse_text(forum_xml, "/activity/#{module_name}/introformat")
|
31
|
+
forum.assessed = parse_text(forum_xml, "/activity/#{module_name}/assessed")
|
32
|
+
forum.assess_time_start = parse_text(forum_xml, "/activity/#{module_name}/assesstimestart")
|
33
|
+
forum.assess_time_finish = parse_text(forum_xml, "/activity/#{module_name}/assesstimefinish")
|
34
|
+
forum.scale = parse_text(forum_xml, "/activity/#{module_name}/scale")
|
35
|
+
forum.max_bytes = parse_text(forum_xml, "/activity/#{module_name}/maxbytes")
|
36
|
+
forum.max_attachments = parse_text(forum_xml, "/activity/#{module_name}/maxattachments")
|
37
|
+
forum.force_subsscribe = parse_text(forum_xml, "/activity/#{module_name}/forcesubscribe")
|
38
|
+
forum.tracking_type = parse_text(forum_xml, "/activity/#{module_name}/trackingtype")
|
39
|
+
forum.rss_type = parse_text(forum_xml, "/activity/#{module_name}/rsstype")
|
40
|
+
forum.rss_articles = parse_text(forum_xml, "/activity/#{module_name}/rssarticles")
|
41
|
+
forum.time_modified = parse_text(forum_xml, "/activity/#{module_name}/timemodified")
|
42
|
+
forum.warn_after = parse_text(forum_xml, "/activity/#{module_name}/warnafter")
|
43
|
+
forum.block_after = parse_text(forum_xml, "/activity/#{module_name}/blockafter")
|
44
|
+
forum.block_period = parse_text(forum_xml, "/activity/#{module_name}/blockperiod")
|
45
|
+
forum.completion_discussions = parse_text(forum_xml, "/activity/#{module_name}/completiondiscussions")
|
46
|
+
forum.completion_replies = parse_text(forum_xml, "/activity/#{module_name}/completionreplies")
|
47
|
+
forum.completion_posts = parse_text(forum_xml, "/activity/#{module_name}/completionposts")
|
47
48
|
end
|
48
49
|
parse_module(activity_dir, forum)
|
49
50
|
forum
|
data/lib/moodle2cc/version.rb
CHANGED
@@ -7,7 +7,7 @@ describe Moodle2CC::Moodle2::Parsers::ForumParser do
|
|
7
7
|
it 'parses a moodle forum' do
|
8
8
|
forums = parser.parse
|
9
9
|
expect(forums.count).to eq 2
|
10
|
-
forum = forums.
|
10
|
+
forum = forums.last
|
11
11
|
expect(forum.id).to eq '1'
|
12
12
|
expect(forum.module_id).to eq '1'
|
13
13
|
expect(forum.type).to eq 'news'
|
@@ -9,9 +9,9 @@ describe Moodle2CC::Moodle2::Parsers::ParserHelper do
|
|
9
9
|
|
10
10
|
describe "#activity_directories" do
|
11
11
|
it "returns a list of directories associated with an activity type" do
|
12
|
-
dirs = subject.activity_directories(moodle2_backup_dir, '
|
12
|
+
dirs = subject.activity_directories(moodle2_backup_dir, 'assign')
|
13
13
|
expect(dirs.size).to eq 2
|
14
|
-
expect(dirs.
|
14
|
+
expect(dirs.sort).to eq ['activities/assign_12', 'activities/assign_4']
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<activity id="1" moduleid="1" modulename="
|
3
|
-
<
|
2
|
+
<activity id="1" moduleid="1" modulename="hsuforum" contextid="20">
|
3
|
+
<hsuforum id="1">
|
4
4
|
<type>news</type>
|
5
5
|
<name>News forum</name>
|
6
6
|
<intro>General news and announcements</intro>
|
@@ -30,5 +30,5 @@
|
|
30
30
|
</readposts>
|
31
31
|
<trackedprefs>
|
32
32
|
</trackedprefs>
|
33
|
-
</
|
33
|
+
</hsuforum>
|
34
34
|
</activity>
|
File without changes
|
File without changes
|
@@ -32,9 +32,9 @@
|
|
32
32
|
<activity>
|
33
33
|
<moduleid>1</moduleid>
|
34
34
|
<sectionid>1</sectionid>
|
35
|
-
<modulename>
|
35
|
+
<modulename>hsuforum</modulename>
|
36
36
|
<title>News forum</title>
|
37
|
-
<directory>activities/
|
37
|
+
<directory>activities/hsuforum_1</directory>
|
38
38
|
</activity>
|
39
39
|
<activity>
|
40
40
|
<moduleid>11</moduleid>
|
@@ -263,14 +263,14 @@
|
|
263
263
|
</setting>
|
264
264
|
<setting>
|
265
265
|
<level>activity</level>
|
266
|
-
<activity>
|
267
|
-
<name>
|
266
|
+
<activity>hsuforum_1</activity>
|
267
|
+
<name>hsuforum_1_included</name>
|
268
268
|
<value>1</value>
|
269
269
|
</setting>
|
270
270
|
<setting>
|
271
271
|
<level>activity</level>
|
272
|
-
<activity>
|
273
|
-
<name>
|
272
|
+
<activity>hsuforum_1</activity>
|
273
|
+
<name>hsuforum_1_userinfo</name>
|
274
274
|
<value>1</value>
|
275
275
|
</setting>
|
276
276
|
<setting>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: moodle2cc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Christopher Durtschi
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-04-
|
13
|
+
date: 2014-04-09 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rubyzip
|
@@ -547,15 +547,6 @@ files:
|
|
547
547
|
- test/fixtures/moodle2/backup/activities/folder_7/inforef.xml
|
548
548
|
- test/fixtures/moodle2/backup/activities/folder_7/module.xml
|
549
549
|
- test/fixtures/moodle2/backup/activities/folder_7/roles.xml
|
550
|
-
- test/fixtures/moodle2/backup/activities/forum_1/calendar.xml
|
551
|
-
- test/fixtures/moodle2/backup/activities/forum_1/comments.xml
|
552
|
-
- test/fixtures/moodle2/backup/activities/forum_1/completion.xml
|
553
|
-
- test/fixtures/moodle2/backup/activities/forum_1/filters.xml
|
554
|
-
- test/fixtures/moodle2/backup/activities/forum_1/forum.xml
|
555
|
-
- test/fixtures/moodle2/backup/activities/forum_1/grades.xml
|
556
|
-
- test/fixtures/moodle2/backup/activities/forum_1/inforef.xml
|
557
|
-
- test/fixtures/moodle2/backup/activities/forum_1/module.xml
|
558
|
-
- test/fixtures/moodle2/backup/activities/forum_1/roles.xml
|
559
550
|
- test/fixtures/moodle2/backup/activities/forum_13/calendar.xml
|
560
551
|
- test/fixtures/moodle2/backup/activities/forum_13/comments.xml
|
561
552
|
- test/fixtures/moodle2/backup/activities/forum_13/completion.xml
|
@@ -574,6 +565,15 @@ files:
|
|
574
565
|
- test/fixtures/moodle2/backup/activities/glossary_8/inforef.xml
|
575
566
|
- test/fixtures/moodle2/backup/activities/glossary_8/module.xml
|
576
567
|
- test/fixtures/moodle2/backup/activities/glossary_8/roles.xml
|
568
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/calendar.xml
|
569
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/comments.xml
|
570
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/completion.xml
|
571
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/filters.xml
|
572
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/grades.xml
|
573
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/hsuforum.xml
|
574
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/inforef.xml
|
575
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/module.xml
|
576
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/roles.xml
|
577
577
|
- test/fixtures/moodle2/backup/activities/label_11/calendar.xml
|
578
578
|
- test/fixtures/moodle2/backup/activities/label_11/comments.xml
|
579
579
|
- test/fixtures/moodle2/backup/activities/label_11/completion.xml
|
@@ -926,15 +926,6 @@ test_files:
|
|
926
926
|
- test/fixtures/moodle2/backup/activities/folder_7/inforef.xml
|
927
927
|
- test/fixtures/moodle2/backup/activities/folder_7/module.xml
|
928
928
|
- test/fixtures/moodle2/backup/activities/folder_7/roles.xml
|
929
|
-
- test/fixtures/moodle2/backup/activities/forum_1/calendar.xml
|
930
|
-
- test/fixtures/moodle2/backup/activities/forum_1/comments.xml
|
931
|
-
- test/fixtures/moodle2/backup/activities/forum_1/completion.xml
|
932
|
-
- test/fixtures/moodle2/backup/activities/forum_1/filters.xml
|
933
|
-
- test/fixtures/moodle2/backup/activities/forum_1/forum.xml
|
934
|
-
- test/fixtures/moodle2/backup/activities/forum_1/grades.xml
|
935
|
-
- test/fixtures/moodle2/backup/activities/forum_1/inforef.xml
|
936
|
-
- test/fixtures/moodle2/backup/activities/forum_1/module.xml
|
937
|
-
- test/fixtures/moodle2/backup/activities/forum_1/roles.xml
|
938
929
|
- test/fixtures/moodle2/backup/activities/forum_13/calendar.xml
|
939
930
|
- test/fixtures/moodle2/backup/activities/forum_13/comments.xml
|
940
931
|
- test/fixtures/moodle2/backup/activities/forum_13/completion.xml
|
@@ -953,6 +944,15 @@ test_files:
|
|
953
944
|
- test/fixtures/moodle2/backup/activities/glossary_8/inforef.xml
|
954
945
|
- test/fixtures/moodle2/backup/activities/glossary_8/module.xml
|
955
946
|
- test/fixtures/moodle2/backup/activities/glossary_8/roles.xml
|
947
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/calendar.xml
|
948
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/comments.xml
|
949
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/completion.xml
|
950
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/filters.xml
|
951
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/grades.xml
|
952
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/hsuforum.xml
|
953
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/inforef.xml
|
954
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/module.xml
|
955
|
+
- test/fixtures/moodle2/backup/activities/hsuforum_1/roles.xml
|
956
956
|
- test/fixtures/moodle2/backup/activities/label_11/calendar.xml
|
957
957
|
- test/fixtures/moodle2/backup/activities/label_11/comments.xml
|
958
958
|
- test/fixtures/moodle2/backup/activities/label_11/completion.xml
|