Skip to content

Commit c9f75bf

Browse files
Disable buttons that mode does not allow
1 parent fd6d463 commit c9f75bf

5 files changed

Lines changed: 14 additions & 3 deletions

File tree

src/_shared/modules/ResourceManager/module.js

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2062,6 +2062,10 @@ FrameTrail.defineModule('ResourceManager', function(FrameTrail){
20622062

20632063
});
20642064

2065+
if (!FrameTrail.module('StorageManager').canSave()) {
2066+
container.find('.addResourcesButton').prop('disabled', true);
2067+
}
2068+
20652069
for (var i in resourceDatabase) {
20662070

20672071
resourceThumb = FrameTrail.newObject(

src/_shared/modules/ViewResources/module.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,11 @@ FrameTrail.defineModule('ViewResources', function(FrameTrail){
8383
FrameTrail.module('ResourceManager').uploadResource(updateList);
8484
});
8585

86+
if (!FrameTrail.module('StorageManager').canSave()) {
87+
ResourceUpload.prop('disabled', true);
88+
ResourceDelete.prop('disabled', true);
89+
}
90+
8691
ResourceDelete.click(toggleDeleteMode);
8792

8893
ResourceDeleteConfirm.hide();

src/player/modules/Sidebar/module.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1072,6 +1072,7 @@ FrameTrail.defineModule('Sidebar', function(FrameTrail){
10721072
var _isGuest = FrameTrail.module('UserManagement').isGuestMode();
10731073
NewHypervideoButton.show().prop('disabled', _isGuest);
10741074
ForkButton.prop('disabled', _isGuest);
1075+
DeleteButton.prop('disabled', _isGuest);
10751076
ExportButton.hide();
10761077
SaveButton.show().prop('disabled', !_canSave);
10771078
SaveAsButton.show();

src/player/modules/Titlebar/module.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -174,9 +174,10 @@ FrameTrail.defineModule('Titlebar', function(FrameTrail){
174174
var userID = FrameTrail.module('UserManagement').userID;
175175
var creatorId = FrameTrail.module('HypervideoModel').creatorId;
176176

177-
// Guest gets full admin-level editing (changes only exportable, not saved to server)
177+
// Guests can edit hypervideo settings only if they can actually save (local mode);
178+
// server+guest and download mode cannot persist hypervideo settings changes
178179
if (FrameTrail.module('UserManagement').isGuestMode()) {
179-
return true;
180+
return FrameTrail.module('StorageManager').canSave();
180181
}
181182

182183
return userRole === 'admin' || String(creatorId) === String(userID);

src/player/modules/ViewOverview/module.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ FrameTrail.defineModule('ViewOverview', function(FrameTrail){
7676
thumb = hypervideo.renderThumb();
7777

7878

79-
if ( (admin || owner) && editMode ) {
79+
if ( (admin || owner) && editMode && FrameTrail.module('StorageManager').canSave() ) {
8080

8181
var hypervideoOptions = $('<div class="hypervideoOptions"></div>');
8282
var editButton = $('<button class="hypervideoEditButton" data-tooltip-bottom="'+ labels['SettingsHypervideoSettings'] +'"><span class="icon-pencil"></span></button>');

0 commit comments

Comments
 (0)