Merge branch 'MDL-50793-master-2' of git://github.com/mihailges/moodle

This commit is contained in:
Eloy Lafuente (stronk7)
2019-02-05 16:14:26 +01:00
2 changed files with 21 additions and 9 deletions
+11 -7
View File
@@ -168,7 +168,7 @@ function book_get_chapter_title($chid, $chapters, $book, $context) {
* @param stdClass $chapter The current chapter
* @param stdClass $book The book
* @param stdClass $cm The course module
* @param bool $edit Whether the user is editing
* @param bool|null $edit Whether the user is editing
*/
function book_add_fake_block($chapters, $chapter, $book, $cm, $edit = null) {
global $PAGE, $USER;
@@ -185,7 +185,7 @@ function book_add_fake_block($chapters, $chapter, $book, $cm, $edit = null) {
}
}
$toc = book_get_toc($chapters, $chapter, $book, $cm, $edit, 0);
$toc = book_get_toc($chapters, $chapter, $book, $cm, $edit);
$bc = new block_contents();
$bc->title = get_string('toc', 'mod_book');
@@ -215,6 +215,7 @@ function book_get_toc($chapters, $chapter, $book, $cm, $edit) {
$first = 1;
$context = context_module::instance($cm->id);
$viewhidden = has_capability('mod/book:viewhiddenchapters', $context);
switch ($book->numbering) {
case BOOK_NUM_NONE:
@@ -231,7 +232,7 @@ function book_get_toc($chapters, $chapter, $book, $cm, $edit) {
break;
}
if ($edit) { // Teacher's TOC
if ($edit) { // Editing on (Teacher's TOC).
$toc .= html_writer::start_tag('ul');
$i = 0;
foreach ($chapters as $ch) {
@@ -351,12 +352,12 @@ function book_get_toc($chapters, $chapter, $book, $cm, $edit) {
$toc .= html_writer::end_tag('li');
$toc .= html_writer::end_tag('ul');
} else { // Normal students view
} else { // Editing off. Normal students, teachers view.
$toc .= html_writer::start_tag('ul');
foreach ($chapters as $ch) {
$title = trim(format_string($ch->title, true, array('context'=>$context)));
$titleunescaped = trim(format_string($ch->title, true, array('context' => $context, 'escape' => false)));
if (!$ch->hidden) {
if (!$ch->hidden || ($ch->hidden && $viewhidden)) {
if (!$ch->subchapter) {
$nch++;
$ns = 0;
@@ -387,12 +388,15 @@ function book_get_toc($chapters, $chapter, $book, $cm, $edit) {
$title = "$nch.$ns. $title";
}
}
$cssclass = ($ch->hidden && $viewhidden) ? 'dimmed_text' : '';
if ($ch->id == $chapter->id) {
$toc .= html_writer::tag('strong', $title);
$toc .= html_writer::tag('strong', $title, array('class' => $cssclass));
} else {
$toc .= html_writer::link(new moodle_url('view.php',
array('id' => $cm->id, 'chapterid' => $ch->id)),
$title, array('title' => s($titleunescaped)));
$title, array('title' => s($titleunescaped), 'class' => $cssclass));
}
if (!$ch->subchapter) {
@@ -11,9 +11,11 @@ Feature: Book activity chapter visibility management
And the following "users" exist:
| username | firstname | lastname | email |
| teacher1 | Teacher | 1 | teacher1@example.com |
| student1 | Student | 2 | student1@example.com |
And the following "course enrolments" exist:
| user | course | role |
| teacher1 | C1 | editingteacher |
| student1 | C1 | student |
And I log in as "teacher1"
And I am on "Course 1" course homepage with editing mode on
And I add a "Book" to section "1" and I fill the form with:
@@ -54,8 +56,8 @@ Feature: Book activity chapter visibility management
And I turn editing mode off
And I am on "Course 1" course homepage
And I follow "Test book"
Then I should not see "Second chapter" in the "Table of contents" "block"
And I should not see "Third chapter" in the "Table of contents" "block"
Then the "class" attribute of "a[title='Second chapter']" "css_element" should contain "dimmed_text"
And the "class" attribute of "a[title='Third chapter']" "css_element" should contain "dimmed_text"
And I follow "Next"
And I should see "Fourth chapter" in the ".book_content" "css_element"
And I follow "Exit book"
@@ -72,3 +74,9 @@ Feature: Book activity chapter visibility management
And I follow "Next"
And I should see "Fourth chapter" in the ".book_content" "css_element"
And I follow "Exit book"
And I log out
And I log in as "student1"
And I am on "Course 1" course homepage
And I follow "Test book"
And I should not see "Second chapter" in the "Table of contents" "block"
And I should not see "Third chapter" in the "Table of contents" "block"