function FluidbookBookmarks(fluidbook) {
- this.fluidbook = fluidbook;
- this.enabled = false;
- this.bookmarks = [];
+ this.fluidbook = fluidbook;
+ this.enabled = false;
+ this.bookmarks = [];
- this._pagesToGroup = [];
- this._groupNames = [];
- this._groups = 0;
- this._groupOrder = [];
+ this._pagesToGroup = [];
+ this._groupNames = [];
+ this._groups = 0;
+ this._groupOrder = [];
- this._cornersIndex = [];
- this._cornersPages = [];
+ this._cornersIndex = [];
+ this._cornersPages = [];
- this.enabled = this.fluidbook.datas.bookmark;
- this.init();
+ this.enabled = this.fluidbook.datas.bookmark;
+ this.init();
}
FluidbookBookmarks.prototype = {
return false;
});
- $(document).on('click', '.bookmarkssub a.send', function() {
- var subject = '%title%';
- if ($this.fluidbook.datas.bookmark_email_title != '') {
- subject = $this.fluidbook.datas.bookmark_email_title;
- }
-
-
- var body = $this.fluidbook.l10n.__('Please see the attached files from "%title%".');
- if ($this.fluidbook.datas.bookmark_email_body != '') {
- body = $this.fluidbook.datas.bookmark_email_body;
- }
-
- subject = subject.replace(/\%title\%/gi, $this.fluidbook.datas.title);
- body = trim(body.replace(/\%title\%/gi, $this.fluidbook.datas.title), ' .');
- body += " : " + $this.getPDF();
-
- $this.fluidbook.intentShare(subject, body);
- return false;
- });
-
- $(document).on('click', '.bookmarkssub a.print', function() {
- $this.fluidbook._openFile($this.getPDF(), $(this), 'pdf', $this.getBookmarksCompacted() + '.pdf');
- return false;
- });
-
- for (var g in this.fluidbook.datas.bookmarkGroups) {
-
- var group = this.fluidbook.datas.bookmarkGroups[g];
- this.addGroup(group.page, group.nb, group.name);
- }
- this.completeGroups();
- this._groupOrder.sort($.proxy(this.sortGroup, this));
-
- this.bookmarks = this.getSavedBookmarks();
- for (var i in this.bookmarks) {
- this.addBookmark(this.bookmarks[i], true);
- }
- },
- sortGroup: function(a, b) {
- var p_a = this.getPagesOfGroup(a)[0];
- var p_b = this.getPagesOfGroup(b)[0];
- return p_a - p_b;
- },
- sortnumeric: function(a, b) {
- return a - b;
- },
- getPDF: function() {
- return 'https://workshop.fluidbook.com/s/e/' + this.fluidbook.datas.cid + '/' + this.getBookmarksCompacted();
- },
- getBookmarksCompacted: function() {
- this.bookmarks.sort(this.sortnumeric);
-
- var g = [];
- var rs = 0;
- var re = 0;
- for (var i = 0; i < this.bookmarks.length; i++) {
- var b = this.bookmarks[i];
- if (rs == 0) {
- rs = re = b;
- continue;
- }
- if (re + 1 == b) {
- re = b;
- continue;
- }
- if (rs == re) {
- g.push('' + rs);
- } else {
- g.push(rs + '-' + re);
- }
-
- rs = re = b;
- }
-
- if (rs != 0) {
- if (rs == re) {
- g.push('' + rs);
- } else {
- g.push(rs + '-' + re);
- }
- }
-
- return g.join(',');
- },
- addGroup: function(from, nb, name) {
- var to = Math.min(from + (nb - 1), this.fluidbook.datas.pages);
- for (var i = from; i <= to; i++)
- {
- this._pagesToGroup[i] = this._groups;
- }
- this._groupNames[this._groups] = name;
- this._groupOrder.push(this._groups);
- this._groups++;
- },
- completeGroups: function() {
- for (var i = 1; i <= this.fluidbook.datas.pages; i++) {
- if (this._pagesToGroup[i] == undefined || this._pagesToGroup[i] == null) {
- this._pagesToGroup[i] = this._groups;
- this._groupOrder.push(this._groups);
- this._groups++;
- }
- }
- },
- getPreviousGroup: function(group) {
- var o = this.getOrderGroup(group);
- if (o == -1) {
- return false;
- }
- o--;
- return this._groupOrder[o];
- },
- getNextGroup: function(group) {
- var o = this.getOrderGroup(group);
- if (o == -1) {
- return false;
- }
- o++;
- return this._groupOrder[o];
- },
- getOrderGroup: function(group) {
- return this._groupOrder.indexOf(group);
- },
- getGroupName: function(groupId)
- {
- var res = '';
- if (this._groupNames[groupId] != undefined) {
- res = this._groupNames[groupId];
- }
- if (res == '') {
- var pages = this.getPagesOfGroup(groupId);
- res = this.fluidbook.physicalToVirtual(pages[0]);
- if (pages.length == 1) {
- return res;
- }
- res += " - " + this.fluidbook.physicalToVirtual(pages[pages.length - 1]);
- }
- return res;
- },
- getPagesOfGroup: function(groupId)
- {
- var res = [];
- for (var i = 1; i <= this.fluidbook.datas.pages; i++) {
- if (this._pagesToGroup[i] == groupId) {
- res.push(i);
- }
- }
- return res;
- },
- getPagesNumberInGroup: function(groupId) {
- return this.getPagesOfGroup(groupId).length;
- },
- getBookmarkedGroups: function(onlyBookmarked)
- {
- if (onlyBookmarked == undefined) {
- onlyBookmarked = true;
- }
-
- var res = [];
- var nb;
- var groupId;
- for (var i = 1; i <= this.fluidbook.datas.pages; ) {
- if (this.isBookmarked(i) || !onlyBookmarked) {
- groupId = this.getGroupOfPage(i);
- nb = this.getPagesNumberInGroup(groupId);
- res.push({page: i, nb: nb, name: this.getGroupName(groupId)});
- i += nb;
- continue;
- }
- i++;
- }
- return res;
- },
- getOrderedGroups: function() {
- return this.getBookmarkedGroups(false);
- },
- getGroupOfPage: function(page) {
- return this._pagesToGroup[page];
- },
- getNextPageInGroupOfPage: function(page) {
- var group = this.getLinkedPages(page);
- var index = group.indexOf(page);
- if (index == group.length - 1) {
- return false;
- }
- return group[index + 1];
- },
- getPreviousPageInGroupOfPage: function(page) {
- var group = this.getLinkedPages(page);
- var index = group.indexOf(page);
- if (index == 0) {
- return false;
- }
- return group[index - 1];
- },
- getNextGroupCover: function(page) {
- var group = this.getGroupOfPage(page);
- group = this.getNextGroup(group);
- if (group === false) {
- return false;
- }
- return this.getCoverOfGroup(group);
- },
- getPreviousGroupCover: function(page) {
- var group = this.getGroupOfPage(page);
- group = this.getPreviousGroup(group);
- if (group === false) {
- return false;
- }
- return this.getCoverOfGroup(group);
- },
- getCoverOfGroup: function(group) {
- var pages = this.getPagesOfGroup(group);
- if (pages.length) {
- return pages[0];
- }
- return false;
- },
- hasNextPageInGroup: function(page) {
- var group = this.getGroupOfPage(page);
- var pages = this.getPagesOfGroup(group);
- var i = pages.indexOf(page);
- if (i == pages.length - 1) {
- return false;
- }
- return true;
- },
- getLinkedPages: function(page) {
- var group = this.getGroupOfPage(page);
- if (group == -1 || isNaN(group)) {
- return [];
- }
- return this.getPagesOfGroup(group);
- },
- addBookmark: function(page, cornersOnly)
- {
- if (cornersOnly == undefined) {
- cornersOnly = false;
- }
- var pages = this.getLinkedPages(page);
- for (i in pages)
- {
- var page = pages[i];
- if (!cornersOnly) {
- this.bookmarks.push(page);
- }
- }
- if (!cornersOnly) {
- this.updateBookmarks();
- // TODO add stats call
- }
- },
- setCornersEnabled: function(page, enabled) {
- var bookmarks = $('.bookmark[data-page="' + page + '"]');
- if (enabled) {
- $(bookmarks).attr('data-enabled', 'enabled');
- } else {
- $(bookmarks).attr('data-enabled', null);
- }
- },
- disableCorners: function() {
- $(".bookmark").attr('data-enabled', null);
- },
- toggleBookmark: function(page) {
-
- var pages = this.getLinkedPages(page);
- var add = false;
- for (var i in pages) {
- var p = pages[i];
- if (this.bookmarks.indexOf(p) > -1) {
- add = true;
- break;
- }
- }
- if (add) {
- this.removeBookmark(page);
- } else {
- this.addBookmark(page);
- }
- },
- removeBookmark: function(page) {
- var pages = this.getLinkedPages(page);
- for (var i in pages) {
- this.bookmarks = arrayRemove(this.bookmarks, pages[i]);
- }
- this.updateBookmarks();
- },
- updateBookmarks: function() {
- this.saveBookmarks();
- var $this = this;
-
- this.disableCorners();
- $.each(this.bookmarks, function(k, v) {
- $this.setCornersEnabled(v, true);
- });
- },
- saveBookmarks: function() {
- this.fluidbook.cache.set('bookmarks', this.bookmarks);
- },
- getSavedBookmarks: function() {
- if (this.fluidbook.cache.isset('bookmarks')) {
- return this.fluidbook.cache.get('bookmarks');
- }
- return [];
- },
- isBookmarked: function(page) {
- return this.bookmarks.indexOf(page) > -1;
- },
- getBookmarkForPage: function(pageNr, onlyOne, allwaysAtRight) {
- if (onlyOne == undefined) {
- onlyOne = false;
- }
- if (allwaysAtRight == undefined) {
- allwaysAtRight = false;
- }
-
- var to = pageNr;
- if (!onlyOne) {
- to++;
- }
-
- var bookmarks = "";
- for (var i = pageNr; i <= to; i++) {
- if (i > 0 && i <= this.fluidbook.datas.pages) {
- var side;
- if (allwaysAtRight) {
- side = 'right';
- } else {
- side = (i % 2 == 0) ? 'left' : 'right';
- if (this.fluidbook.l10n.dir == 'rtl') {
- side = side == 'left' ? 'right' : 'left';
- }
- }
-
- bookmarks += "<a href=\"#\" class=\"bookmark " + side + "\" data-page=\"" + i + "\"";
- if (this.isBookmarked(i)) {
- bookmarks += " data-enabled=\"enabled\"";
- }
- bookmarks += '></a>';
- }
- }
- return bookmarks;
- },
- getView: function() {
- var c = this.getIndex(false);
- if (c === false) {
- return c;
- }
+ $(document).on('click', '.bookmarkssub a.send', function () {
+ var subject = '%title%';
+ if ($this.fluidbook.datas.bookmark_email_title != '') {
+ subject = $this.fluidbook.datas.bookmark_email_title;
+ }
+
+
+ var body = $this.fluidbook.l10n.__('Please see the attached files from "%title%".');
+ if ($this.fluidbook.datas.bookmark_email_body != '') {
+ body = $this.fluidbook.datas.bookmark_email_body;
+ }
+
+ subject = subject.replace(/\%title\%/gi, $this.fluidbook.datas.title);
+ body = trim(body.replace(/\%title\%/gi, $this.fluidbook.datas.title), ' .');
+ body += " : " + $this.getPDF();
+
+ $this.fluidbook.intentShare(subject, body);
+ return false;
+ });
+
+ $(document).on('click', '.bookmarkssub a.print', function () {
+ $this.fluidbook._openFile($this.getPDF(), $(this), 'pdf', $this.getBookmarksCompacted() + '.pdf');
+ return false;
+ });
+
+ for (var g in this.fluidbook.datas.bookmarkGroups) {
+
+ var group = this.fluidbook.datas.bookmarkGroups[g];
+ this.addGroup(group.page, group.nb, group.name);
+ }
+ this.completeGroups();
+ this._groupOrder.sort($.proxy(this.sortGroup, this));
+
+ this.bookmarks = this.getSavedBookmarks();
+ for (var i in this.bookmarks) {
+ this.addBookmark(this.bookmarks[i], true);
+ }
+ },
+ sortGroup: function (a, b) {
+ var p_a = this.getPagesOfGroup(a)[0];
+ var p_b = this.getPagesOfGroup(b)[0];
+ return p_a - p_b;
+ },
+ sortnumeric: function (a, b) {
+ return a - b;
+ },
+ getPDF: function () {
+ return 'https://workshop.fluidbook.com/s/e/' + this.fluidbook.datas.cid + '/' + this.getBookmarksCompacted();
+ },
+ getBookmarksCompacted: function () {
+ this.bookmarks.sort(this.sortnumeric);
+
+ var g = [];
+ var rs = 0;
+ var re = 0;
+ for (var i = 0; i < this.bookmarks.length; i++) {
+ var b = this.bookmarks[i];
+ if (rs == 0) {
+ rs = re = b;
+ continue;
+ }
+ if (re + 1 == b) {
+ re = b;
+ continue;
+ }
+ if (rs == re) {
+ g.push('' + rs);
+ } else {
+ g.push(rs + '-' + re);
+ }
+
+ rs = re = b;
+ }
+
+ if (rs != 0) {
+ if (rs == re) {
+ g.push('' + rs);
+ } else {
+ g.push(rs + '-' + re);
+ }
+ }
+
+ return g.join(',');
+ },
+ addGroup: function (from, nb, name) {
+ var to = Math.min(from + (nb - 1), this.fluidbook.datas.pages);
+ for (var i = from; i <= to; i++) {
+ this._pagesToGroup[i] = this._groups;
+ }
+ this._groupNames[this._groups] = name;
+ this._groupOrder.push(this._groups);
+ this._groups++;
+ },
+ completeGroups: function () {
+ for (var i = 1; i <= this.fluidbook.datas.pages; i++) {
+ if (this._pagesToGroup[i] == undefined || this._pagesToGroup[i] == null) {
+ this._pagesToGroup[i] = this._groups;
+ this._groupOrder.push(this._groups);
+ this._groups++;
+ }
+ }
+ },
+ getPreviousGroup: function (group) {
+ var o = this.getOrderGroup(group);
+ if (o == -1) {
+ return false;
+ }
+ o--;
+ return this._groupOrder[o];
+ },
+ getNextGroup: function (group) {
+ var o = this.getOrderGroup(group);
+ if (o == -1) {
+ return false;
+ }
+ o++;
+ return this._groupOrder[o];
+ },
+ getOrderGroup: function (group) {
+ return this._groupOrder.indexOf(group);
+ },
+ getGroupName: function (groupId) {
+ var res = '';
+ if (this._groupNames[groupId] != undefined) {
+ res = this._groupNames[groupId];
+ }
+ if (res == '') {
+ var pages = this.getPagesOfGroup(groupId);
+ res = this.fluidbook.physicalToVirtual(pages[0]);
+ if (pages.length == 1) {
+ return res;
+ }
+ res += " - " + this.fluidbook.physicalToVirtual(pages[pages.length - 1]);
+ }
+ return res;
+ },
+ getPagesOfGroup: function (groupId) {
+ var res = [];
+ for (var i = 1; i <= this.fluidbook.datas.pages; i++) {
+ if (this._pagesToGroup[i] == groupId) {
+ res.push(i);
+ }
+ }
+ return res;
+ },
+ getPagesNumberInGroup: function (groupId) {
+ return this.getPagesOfGroup(groupId).length;
+ },
+ getBookmarkedGroups: function (onlyBookmarked) {
+ if (onlyBookmarked == undefined) {
+ onlyBookmarked = true;
+ }
+
+ var res = [];
+ var nb;
+ var groupId;
+ for (var i = 1; i <= this.fluidbook.datas.pages;) {
+ if (this.isBookmarked(i) || !onlyBookmarked) {
+ groupId = this.getGroupOfPage(i);
+ nb = this.getPagesNumberInGroup(groupId);
+ res.push({page: i, nb: nb, name: this.getGroupName(groupId)});
+ i += nb;
+ continue;
+ }
+ i++;
+ }
+ return res;
+ },
+ getOrderedGroups: function () {
+ return this.getBookmarkedGroups(false);
+ },
+ getGroupOfPage: function (page) {
+ return this._pagesToGroup[page];
+ },
+ getNextPageInGroupOfPage: function (page) {
+ var group = this.getLinkedPages(page);
+ var index = group.indexOf(page);
+ if (index == group.length - 1) {
+ return false;
+ }
+ return group[index + 1];
+ },
+ getPreviousPageInGroupOfPage: function (page) {
+ var group = this.getLinkedPages(page);
+ var index = group.indexOf(page);
+ if (index == 0) {
+ return false;
+ }
+ return group[index - 1];
+ },
+ getNextGroupCover: function (page) {
+ var group = this.getGroupOfPage(page);
+ group = this.getNextGroup(group);
+ if (group === false) {
+ return false;
+ }
+ return this.getCoverOfGroup(group);
+ },
+ getPreviousGroupCover: function (page) {
+ var group = this.getGroupOfPage(page);
+ group = this.getPreviousGroup(group);
+ if (group === false) {
+ return false;
+ }
+ return this.getCoverOfGroup(group);
+ },
+ getCoverOfGroup: function (group) {
+ var pages = this.getPagesOfGroup(group);
+ if (pages.length) {
+ return pages[0];
+ }
+ return false;
+ },
+ hasNextPageInGroup: function (page) {
+ var group = this.getGroupOfPage(page);
+ var pages = this.getPagesOfGroup(group);
+ var i = pages.indexOf(page);
+ if (i == pages.length - 1) {
+ return false;
+ }
+ return true;
+ },
+ getLinkedPages: function (page) {
+ var group = this.getGroupOfPage(page);
+ if (group == -1 || isNaN(group)) {
+ return [];
+ }
+ return this.getPagesOfGroup(group);
+ },
+ addBookmark: function (page, cornersOnly) {
+ if (cornersOnly == undefined) {
+ cornersOnly = false;
+ }
+ var pages = this.getLinkedPages(page);
+ for (i in pages) {
+ var page = pages[i];
+ if (!cornersOnly) {
+ this.bookmarks.push(page);
+ }
+ }
+ if (!cornersOnly) {
+ this.updateBookmarks();
+ // TODO add stats call
+ }
+ },
+ setCornersEnabled: function (page, enabled) {
+ var bookmarks = $('.bookmark[data-page="' + page + '"]');
+ if (enabled) {
+ $(bookmarks).attr('data-enabled', 'enabled');
+ } else {
+ $(bookmarks).attr('data-enabled', null);
+ }
+ },
+ disableCorners: function () {
+ $(".bookmark").attr('data-enabled', null);
+ },
+ toggleBookmark: function (page) {
+
+ var pages = this.getLinkedPages(page);
+ var add = false;
+ for (var i in pages) {
+ var p = pages[i];
+ if (this.bookmarks.indexOf(p) > -1) {
+ add = true;
+ break;
+ }
+ }
+ if (add) {
+ this.removeBookmark(page);
+ } else {
+ this.addBookmark(page);
+ }
+ },
+ removeBookmark: function (page) {
+ var pages = this.getLinkedPages(page);
+ for (var i in pages) {
+ this.bookmarks = arrayRemove(this.bookmarks, pages[i]);
+ }
+ this.updateBookmarks();
+ },
+ updateBookmarks: function () {
+ this.saveBookmarks();
+ var $this = this;
+
+ this.disableCorners();
+ $.each(this.bookmarks, function (k, v) {
+ $this.setCornersEnabled(v, true);
+ });
+ },
+ saveBookmarks: function () {
+ this.fluidbook.cache.set('bookmarks', this.bookmarks);
+ },
+ getSavedBookmarks: function () {
+ if (this.fluidbook.cache.isset('bookmarks')) {
+ return this.fluidbook.cache.get('bookmarks');
+ }
+ return [];
+ },
+ isBookmarked: function (page) {
+ return this.bookmarks.indexOf(page) > -1;
+ },
+ getBookmarkForPage: function (pageNr, onlyOne, allwaysAtRight) {
+ if (onlyOne == undefined) {
+ onlyOne = false;
+ }
+ if (allwaysAtRight == undefined) {
+ allwaysAtRight = false;
+ }
+
+ var to = pageNr;
+ if (!onlyOne) {
+ to++;
+ }
+
+ var bookmarks = "";
+ for (var i = pageNr; i <= to; i++) {
+ if (i > 0 && i <= this.fluidbook.datas.pages) {
+ var side;
+ if (allwaysAtRight) {
+ side = 'right';
+ } else {
+ side = (i % 2 == 0) ? 'left' : 'right';
+ if (this.fluidbook.l10n.dir == 'rtl') {
+ side = side == 'left' ? 'right' : 'left';
+ }
+ }
+
+ bookmarks += "<a href=\"#\" class=\"bookmark " + side + "\" data-page=\"" + i + "\"";
+ if (this.isBookmarked(i)) {
+ bookmarks += " data-enabled=\"enabled\"";
+ }
+ bookmarks += '></a>';
+ }
+ }
+ return bookmarks;
+ },
+ getView: function () {
+ var c = this.getIndex(false);
+ if (c === false) {
+ return c;
+ }
var index = '<div class="bookmarkssub"><div class="caption">' + this.fluidbook.menu.closeButton() + '<h2>' + this.fluidbook.l10n.__('bookmarks') + '</h2>';
- index += '</div>';
+ index += '</div>';
index += c;
- index += '</div>';
- return index;
- },
- hasBookmarkedPages: function(all) {
- if (all == undefined) {
- all = false;
- }
-
- if (all == false) {
- groups = this.getBookmarkedGroups();
- } else {
- groups = this.getOrderedGroups();
- }
-
- if (groups.length == 0) {
- return false;
- }
- return true;
- },
- getIndex: function(all, onlyGroup) {
- if (all == undefined) {
- all = false;
- }
- var groups;
-
- if (all == false) {
- groups = this.getBookmarkedGroups();
- } else {
- groups = this.getOrderedGroups();
- }
-
- if (groups.length == 0) {
- return false;
- }
-
- var index = '<div class="content"><div id="indexView" class="bookmarkView">';
-
- if (onlyGroup == undefined) {
- for (var g = 0; g < groups.length; g++) {
- var group = groups[g];
- var pages = [];
- for (var i = 0; i < group.nb; i++) {
- pages.push(group.page + i);
- }
-
- index += '<div class="doubleThumb simple left" page="' + group.page + '" data-pages="' + pages.join(',') + '">';
- index += '<div class="thumb left"><a href="#/page/' + group.page + '">' + this.fluidbook.loader.getImage('data/thumbnails/p' + group.page + '.jpg') + '</a><span class="number">' + group.name + '</span>';
- if (this.fluidbook.bookmarks.enabled) {
- index += this.fluidbook.bookmarks.getBookmarkForPage(group.page, true, true);
- }
- index += '</div>';
- index += '</div>';
- }
- } else {
- var group = groups[this.getGroupOfPage(onlyGroup)];
-
- var pages = [];
- for (var i = 0; i < group.nb; i++) {
- pages.push(group.page + i);
- }
-
- for (i in pages) {
- var p = pages[i];
- index += '<div class="doubleThumb simple left" page="' + p + '" data-pages="' + p + '">';
- index += '<div class="thumb left"><a href="#/page/' + p + '">' + this.fluidbook.loader.getImage('data/thumbnails/p' + p + '.jpg') + '</a><span class="number">' + this.fluidbook.physicalToVirtual(p) + '</span>';
- if (this.fluidbook.bookmarks.enabled) {
- index += this.fluidbook.bookmarks.getBookmarkForPage(p, true, true);
- }
- index += '</div>';
- index += '</div>';
- }
- }
+ index += '</div>';
+ return index;
+ },
+ hasBookmarkedPages: function (all) {
+ if (all == undefined) {
+ all = false;
+ }
+
+ if (all == false) {
+ groups = this.getBookmarkedGroups();
+ } else {
+ groups = this.getOrderedGroups();
+ }
+
+ if (groups.length == 0) {
+ return false;
+ }
+ return true;
+ },
+ getIndex: function (all, onlyGroup) {
+ if (all == undefined) {
+ all = false;
+ }
+ var groups;
+
+ if (all == false) {
+ groups = this.getBookmarkedGroups();
+ } else {
+ groups = this.getOrderedGroups();
+ }
+
+ if (groups.length == 0) {
+ return false;
+ }
+
+ var index = '<div class="content"><div id="indexView" class="bookmarkView">';
+
+ if (onlyGroup == undefined) {
+ for (var g = 0; g < groups.length; g++) {
+ var group = groups[g];
+ var pages = [];
+ for (var i = 0; i < group.nb; i++) {
+ pages.push(group.page + i);
+ }
+
+ index += '<div class="doubleThumb simple left" page="' + group.page + '" data-pages="' + pages.join(',') + '">';
+ index += '<div class="thumb left"><a href="#/page/' + group.page + '">' + this.fluidbook.loader.getThumbImage(group.page) + '</a><span class="number">' + group.name + '</span>';
+ if (this.fluidbook.bookmarks.enabled) {
+ index += this.fluidbook.bookmarks.getBookmarkForPage(group.page, true, true);
+ }
+ index += '</div>';
+ index += '</div>';
+ }
+ } else {
+ var group = groups[this.getGroupOfPage(onlyGroup)];
+
+ var pages = [];
+ for (var i = 0; i < group.nb; i++) {
+ pages.push(group.page + i);
+ }
+
+ for (i in pages) {
+ var p = pages[i];
+ index += '<div class="doubleThumb simple left" page="' + p + '" data-pages="' + p + '">';
+ index += '<div class="thumb left"><a href="#/page/' + p + '">' + this.fluidbook.loader.getThumbImage(p) + '</a><span class="number">' + this.fluidbook.physicalToVirtual(p) + '</span>';
+ if (this.fluidbook.bookmarks.enabled) {
+ index += this.fluidbook.bookmarks.getBookmarkForPage(p, true, true);
+ }
+ index += '</div>';
+ index += '</div>';
+ }
+ }
index += '</div>';
index += '<div class="fonctions">';
if (this.fluidbook.datas.friend) {
}
index += '</div>';
index += '</div>';
- return index;
- }
+ return index;
+ }
};
\ No newline at end of file