46 : array {
47 $main_page->preparePageForCompare($l_page);
48 $main_page->preparePageForCompare($r_page);
51
52 foreach ($l_hashes as $pc_id => $h) {
53 if (!isset($r_hashes[$pc_id])) {
54 $l_hashes[$pc_id]["change"] = "Deleted";
55 } else {
56 if ($h["hash"] != $r_hashes[$pc_id]["hash"]) {
57 $l_hashes[$pc_id]["change"] = "Modified";
58 $r_hashes[$pc_id]["change"] = "Modified";
59
60
61 if ($l_hashes[$pc_id]["content"] != "" &&
62 $r_hashes[$pc_id]["content"] != "") {
63 $new_left = str_replace("\n", "<br />", $l_hashes[$pc_id]["content"]);
64 $new_right = str_replace("\n", "<br />", $r_hashes[$pc_id]["content"]);
65 $wldiff = new \WordLevelDiff(
66 array($new_left),
67 array($new_right)
68 );
69 $new_left = $wldiff->orig();
70 $new_right = $wldiff->closing();
73 }
74 }
75 }
76 }
77
78
79 foreach ($r_hashes as $pc_id => $h) {
80 if (!isset($l_hashes[$pc_id])) {
81 $r_hashes[$pc_id]["change"] = "New";
82 }
83 }
86
87 return array("l_page" => $l_page,
88 "r_page" => $r_page,
89 "l_changes" => $l_hashes,
90 "r_changes" => $r_hashes
91 );
92 }
getPageContentsHashes(\ilPageObject $page)
Get page contents hashes.
addChangeDivClasses(\ilPageObject $page, array $a_hashes)
setParagraphContent(\ilPageObject $page, string $a_hier_id, string $content)