diff --git a/pandora/0xdb.jsonc b/pandora/0xdb.jsonc index 49d52890..48350997 100644 --- a/pandora/0xdb.jsonc +++ b/pandora/0xdb.jsonc @@ -16,6 +16,7 @@ "canDeleteItems": {"admin": true}, "canDownloadVideo": {"guest": 0, "member": 0, "friend": 4, "staff": 4, "admin": 4}, "canEditMetadata": {"staff": true, "admin": true}, + "canEditSitePages": {"staff": true, "admin": true}, "canEditUsers": {"admin": true}, "canPlayClips": {"guest": 2, "member": 2, "friend": 4, "staff": 4, "admin": 4}, "canPlayVideo": {"guest": 1, "member": 1, "friend": 4, "staff": 4, "admin": 4}, diff --git a/static/js/pandora/infoView.js b/static/js/pandora/infoView.js index 257d0def..f72a4824 100644 --- a/static/js/pandora/infoView.js +++ b/static/js/pandora/infoView.js @@ -626,10 +626,7 @@ pandora.ui.infoView = function(data) { type: 'image' }) .addClass('OxColor OxColorGradient') - .css({ - background: $element.css('background'), - color: $element.css('color') - }) + .css({background: $element.css('background')}) .css('margin' + (canEdit ? 'Left' : 'Right'), '4px') .data({OxColor: $element.data('OxColor')}) .appendTo($line); diff --git a/static/js/pandora/menu.js b/static/js/pandora/menu.js index 9306a0c2..9f684d86 100644 --- a/static/js/pandora/menu.js +++ b/static/js/pandora/menu.js @@ -141,7 +141,8 @@ pandora.ui.mainMenu = function() { pandora.site.capabilities.canSeeDebugMenu[pandora.user.level] ? [ { id: 'debugMenu', title: 'Debug', items: [ - { id: 'clearcache', title: 'Clear cache'}, + { id: 'clearcache', title: 'Clear Cache'}, + { id: 'reloadapplication', title: 'Reload Application'}, { id: 'resetui', title: 'Reset UI Settings'} ] } ] @@ -248,12 +249,14 @@ pandora.ui.mainMenu = function() { groups: pandora.site.user.ui.groups }); pandora.$ui.contentPanel.replaceElement(0, pandora.$ui.browser = pandora.ui.browser()); + } else if (data.id == 'clearcache') { + Ox.Request.clearCache(); + } else if (data.id == 'reloadapplication') { + pandora.$ui.appPanel.reload(); } else if (data.id == 'resetui') { pandora.api.resetUI({}, function() { pandora.$ui.appPanel.reload(); }); - } else if (data.id == 'clearcache') { - Ox.Request.clearCache(); } }, pandora_find: function() { diff --git a/static/js/pandora/siteDialog.js b/static/js/pandora/siteDialog.js index 1ff786dd..556a540f 100644 --- a/static/js/pandora/siteDialog.js +++ b/static/js/pandora/siteDialog.js @@ -8,12 +8,29 @@ pandora.ui.siteDialog = function(section) { Ox.getObjectById(tabs, section).selected = true; var $tabPanel = Ox.TabPanel({ content: function(id) { - var content = Ox.Element().css({padding: '16px', overflowY: 'auto'}); + var $content = Ox.Element().css({padding: '16px', overflowY: 'auto'}); if (id == 'contact') { - content.append(pandora.ui.contactForm()); + $content.append(pandora.ui.contactForm()); } else { - pandora.api.getPage({name:id}, function(result) { - content.html(result.data.body); + pandora.api.getPage({name: id}, function(result) { + Ox.print('DATA::', result.data) + Ox.Editable({ + editable: pandora.site.capabilities.canEditSitePages[pandora.user.level], + tooltip: 'Doubleclick to edit', + type: 'textarea', + value: result.data.body + }) + .css({width: '100%'}) + .bindEvent({ + submit: function(data) { + Ox.Request.clearCache('getPage'); + pandora.api.editPage({ + name: id, + body: data.value + }); + } + }) + .appendTo($content) }); } return Ox.SplitPanel({ @@ -31,7 +48,7 @@ pandora.ui.siteDialog = function(section) { size: 272 }, { - element: content + element: $content } ], orientation: 'horizontal'