From 33e55bc70533b5dcfa4b3c5288de4256d21a4847 Mon Sep 17 00:00:00 2001 From: j Date: Tue, 22 Oct 2019 16:30:17 +0200 Subject: [PATCH] add logo/icon --- config.jsonc | 7 +- static/js/home.collectivecinema.js | 323 +++++++++++++++++++++++++++ static/png/icon.collectivecinema.png | Bin 0 -> 6754 bytes static/png/logo.collectivecinema.png | Bin 0 -> 13435 bytes static/svg/logo.collectivecinema.svg | 24 ++ 5 files changed, 348 insertions(+), 6 deletions(-) create mode 100644 static/js/home.collectivecinema.js create mode 100644 static/png/icon.collectivecinema.png create mode 100644 static/png/logo.collectivecinema.png create mode 100644 static/svg/logo.collectivecinema.svg diff --git a/config.jsonc b/config.jsonc index 0f6822b..065c19a 100644 --- a/config.jsonc +++ b/config.jsonc @@ -992,11 +992,6 @@ examples (config.SITENAME.jsonc) that are part of this pan.do/ra distribution. {"name": "Private", "color": [255, 128, 128]} ], /* - "sendReferrer", if set to false, will cause all outgoing links to originate - from one single URL - */ - "sendReferrer": false, - /* "site" contains various settings for this instance. In "email", "contact" if the address in the contact form (to), "system" is the address used by the system (from). @@ -1011,7 +1006,7 @@ examples (config.SITENAME.jsonc) that are part of this pan.do/ra distribution. // E-mail address uses by the system (from) "system": "system@collective-cinema.net" }, - "https": false, + "https": true, "id": "collectivecinema", "name": "Collective Cinema", // Set to true to allow search engines to index the site diff --git a/static/js/home.collectivecinema.js b/static/js/home.collectivecinema.js new file mode 100644 index 0000000..76162e7 --- /dev/null +++ b/static/js/home.collectivecinema.js @@ -0,0 +1,323 @@ +'use strict'; + +pandora.ui.home = function() { + + var that = $('
') + .addClass('OxScreen') + .css({ + position: 'absolute', + width: '100%', + height: '100%', + opacity: 0, + zIndex: 1001 + }), + $reflectionImage = $('') + .addClass('logo') + .attr({src: '/static/png/logo.png'}) + .css({ + position: 'absolute', + left: 0, + top: '160px', + right: 0, + bottom: 0, + width: '320px', + margin: 'auto', + opacity: 0, + MozTransform: 'scaleY(-1)', + OTransform: 'scaleY(-1)', + WebkitTransform: 'scaleY(-1)' + }) + .appendTo(that), + $reflectionGradient = $('
') + .addClass('OxReflection logo') + .css({ + position: 'absolute', + left: 0, + top: '160px', + right: 0, + bottom: 0, + // FIXME: should be 320 and 160 - the values below are temporary fixes for Chrome 26 + width: '322px', + height: '162px', + margin: 'auto', + }) + .appendTo(that), + $logo = $('') + .addClass('logo') + .attr({ + id: 'logo', + src: '/static/png/logo.png' + }) + .css({ + position: 'absolute', + left: 0, + top: 0, + right: 0, + bottom: '160px', + width: window.innerWidth + 'px', + margin: 'auto', + cursor: 'pointer' + }) + .on({ + click: function() { + $browseButton.triggerEvent('click'); + } + }) + .appendTo(that), + $findInput = Ox.Input({ + width: 156 + }) + .css({ + position: 'absolute', + left: 0, + top: '48px', + right: '164px', + bottom: 0, + margin: 'auto', + opacity: 0 + }) + .on({ + click: function(e) { + // fixme: why? + e.stopPropagation(); + } + }) + .bindEvent({ + submit: function(data) { + if (data.value) { + $findButton.triggerEvent('click'); + } else { + $browseButton.triggerEvent('click'); + } + } + }) + .appendTo(that), + $findButton = Ox.Button({ + title: Ox._('Find'), + width: 74 + }) + .css({ + position: 'absolute', + left: '82px', + top: '48px', + right: 0, + bottom: 0, + margin: 'auto', + opacity: 0 + }) + .bindEvent({ + click: function() { + var folder = pandora.getListData().folder, + value = $findInput.value(); + folder && pandora.$ui.folderList[folder].options({selected: []}); + that.fadeOutScreen(); + pandora.UI.set({ + page: '', + find: { + conditions: value === '' + ? [] + : [{key: '*', value: value, operator: '='}], + operator: '&' + }, + section: 'items' + }); + pandora.$ui.findSelect && pandora.$ui.findSelect.value('*'); + pandora.$ui.findInput && pandora.$ui.findInput.value(value); + } + }) + .appendTo(that), + $browseButton = Ox.Button({ + title: Ox._('Browse'), + width: 74 + }) + .css({ + position: 'absolute', + left: '246px', + top: '48px', + right: 0, + bottom: 0, + margin: 'auto', + opacity: 0 + }) + .bindEvent({ + click: function() { + pandora.UI.set({ + page: pandora.user.ui.page == 'home' ? '' : pandora.user.ui.page, + section: 'items' + }); + that.fadeOutScreen(); + } + }) + .appendTo(that), + + $signupButton = Ox.Button({ + title: Ox._('Sign Up'), + width: 74 + }) + .css({ + position: 'absolute', + left: 0, + top: '112px', + right: '246px', + bottom: 0, + margin: 'auto', + opacity: 0 + }) + .bindEvent({ + click: function() { + pandora.UI.set({page: 'signup'}); + that.fadeOutScreen(); + } + }), + $signinButton = Ox.Button({ + title: Ox._('Sign In'), + width: 74 + }) + .css({ + position: 'absolute', + left: 0, + top: '112px', + right: '82px', + bottom: 0, + margin: 'auto', + opacity: 0 + }) + .bindEvent({ + click: function() { + pandora.UI.set({page :'signin'}); + that.fadeOutScreen(); + } + }), + $preferencesButton = Ox.Button({ + title: Ox._('Preferences'), + width: 156 + }) + .css({ + position: 'absolute', + left: 0, + top: '112px', + right: '164px', + bottom: 0, + margin: 'auto', + opacity: 0 + }) + .bindEvent({ + click: function() { + pandora.UI.set({page: 'preferences'}); + that.fadeOutScreen(); + } + }), + $aboutButton = Ox.Button({ + title: Ox._('About {0}', [pandora.site.site.name]), + width: 156 + }) + .css({ + position: 'absolute', + left: '164px', + top: '112px', + right: 0, + bottom: 0, + margin: 'auto', + opacity: 0 + }) + .bindEvent({ + click: function() { + pandora.UI.set({page: 'about'}); + that.fadeOutScreen(); + } + }) + .appendTo(that), + $text = $('
') + .html(Ox._( + 'pan.do/ra. \u2620 2007-{0} 0x2620. All Open Source.', + [Ox.formatDate(new Date(), '%Y')] + )).css({ + position: 'absolute', + left: 0, + top: '176px', + right: 0, + bottom: 0, + width: '360px', + height: '16px', + margin: 'auto', + opacity: 0, + textAlign: 'center' + }) + .appendTo(that); + + adjustRatio(); + + if (pandora.user.level == 'guest') { + $signupButton.appendTo(that); + $signinButton.appendTo(that); + } else { + $preferencesButton.appendTo(that); + } + + function adjustRatio() { + var width = $logo.width(); + var height = $logo.height(); + if (width == 0 || height == 0) { + setTimeout(adjustRatio, 50); + } else { + var aspect = width / height; + if (aspect != 2) { + var top = 320 / aspect; + $reflectionImage.css({ + top: top + 'px', + }) + $reflectionGradient.css({ + top: top + 'px', + height: (top + 2) + 'px', + }) + $logo.css({ + bottom: top + 'px', + }) + } + } + } + + that.fadeInScreen = function() { + that.appendTo(Ox.$body).animate({opacity: 1}, 500, function() { + that.find(':not(#logo)').animate({opacity: 1}, 250, function() { + $findInput.focusInput(true); + }); + }); + $logo.animate({width: '320px'}, 500); + return that; + }; + + that.fadeOutScreen = function() { + that.find(':not(#logo)').hide(); + $logo.animate({width: window.innerWidth + 'px'}, 500); + that.animate({opacity: 0}, 500, function() { + that.remove(); + }); + pandora.$ui.tv && pandora.$ui.tv.unmute().find('.OxControls.OxVolume').hide(); + return that; + }; + + that.hideScreen = function() { + that.hide().remove(); + that.find(':not(#logo)').css({opacity: 0}); + $logo.css({width: window.innerWidth + 'px'}); + return that; + }; + + that.showScreen = function(callback) { + var $elements = that.find(':not(.logo)'), count = 0; + $logo.css({width: '320px'}); + that.css({opacity: 1}).appendTo(Ox.$body); + that.find(':not(#logo)').css({opacity: 1}); + $elements.animate({opacity: 1}, 500, function() { + if (callback && ++count == $elements.length) { + callback(); + } + }); + $findInput.focusInput(true); + return that; + }; + + return that; + +}; diff --git a/static/png/icon.collectivecinema.png b/static/png/icon.collectivecinema.png new file mode 100644 index 0000000000000000000000000000000000000000..2f6b589a4eeb5865e9e32f888b47f07a1a111e5b GIT binary patch literal 6754 zcmeHr`8V77_kS>DxNF=`vFh&}e5*b=)aQ$A{ItF=@}M;9cL zSW0RQQjA*C(ib5Jjiq9VG(rT)*ZYU>zwr6#bI*C6$Mf9typQ`h_nhZB_ukCEY|O!j z6c2$wAh5-sckhEh()(9w(9g2_uo3%Jv=6dgmgaZ&ao@IoZ^7)t!SFwwqV^-k{(GeE zTq%j&cgjUuSewbQ51o=%I<7r-w-E$V;9A_hZ67(dwON0DvNaQ=dR%kEI}=D0uizw-aj{ue9Yu@iFt zC#%mY1RBB6K1LNY-EL4bL7DL1jbjqUrN+HDc&;hAl0?!V4V`7Da#lDSoNTQj_+)-W zIO_YE7zN4pE3L2)r3Cwg9E=14GynpZz1+iue!L~#vKJB&h8kr+hVV8c8aF^G4fP2q zGRFki>oGm6)l;@C)Yrh9z?1xTx2rg>!$3+VAR~M;m!YxdrV^Jg#d2=>V9+4?!GPG1 zOx%)|F3B9)=WvPG;{3;@I|kOG!CN$L6a6Xphm!>K;+O5&U8{CUNYsXqU&*nt+>IkE zGrKbI`8_xUJm(CkgQDzeOp0F-@;_%H=)Qm)KE@uYKs{LJ-A;(VFA#D%!4CuvHn%xA ze2fD(tOzFUcr}Jl25+N!zKrhAX7>XT>={2O43mW>s@ka-POC3YYLJwe5dYe`yH=D%mZhAf1iQuZUC5gZ|AiJO%Q9;7+9J|hK37e z?*CeIC5CA8#I+DIZ7}*JzS&<@>UvbGiP9k{L(d1aA)i8vO3SmSb+J`7s%s2HYDpZeDNMOKhu<%0;y|?Z>ht5ok+>J z7us?CqM%SmGP1pJl1o6dUTxOd5|V00PSVfBCg�g?&Qt*DjE;>y@ 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 Sls6dwA86Ba|CJeg-1$EM)q^nr literal 0 HcmV?d00001 diff --git a/static/svg/logo.collectivecinema.svg b/static/svg/logo.collectivecinema.svg new file mode 100644 index 0000000..47d19b2 --- /dev/null +++ b/static/svg/logo.collectivecinema.svg @@ -0,0 +1,24 @@ + + + + + + + + + + + + +