From 134c43a85589b64d44c55eca2f645bf4dbfb87bd Mon Sep 17 00:00:00 2001 From: RemixDev Date: Thu, 13 May 2021 11:39:49 +0200 Subject: [PATCH] Fixed saveSettings and updateSettings --- public/js/bundle.js | 4 ++-- src/components/pages/Settings.vue | 9 +++++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/public/js/bundle.js b/public/js/bundle.js index 539b125..63f7127 100644 --- a/public/js/bundle.js +++ b/public/js/bundle.js @@ -4835,7 +4835,7 @@ a { /*# sourceMappingURL=data:application/json;base64,`+btoa(unescape(encodeURIComponent(JSON.stringify(s.map))))+" */"),n&&(c.element=c.element||document.querySelector("style[data-group="+l+"]")),!c.element){const d=c.element=document.createElement("style");d.type="text/css",s.media&&d.setAttribute("media",s.media),n&&(d.setAttribute("data-group",l),d.setAttribute("data-next-index","0")),e.appendChild(d)}if(n&&(u=parseInt(c.element.getAttribute("data-next-index")),c.element.setAttribute("data-next-index",u+1)),c.element.styleSheet)c.parts.push(o),c.element.styleSheet.cssText=c.parts.filter(Boolean).join(` `);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var BaseAccordion=__vue_normalize__$3({render:__vue_render__$3,staticRenderFns:__vue_staticRenderFns__$3},__vue_inject_styles__$3,__vue_script__$3,__vue_scope_id__$3,__vue_is_functional_template__$3,__vue_module_identifier__$1,__vue_create_injector__$1),script$2={components:{BaseAccordion},props:{templateVariables:{type:Array,required:!0}}};const __vue_script__$2=script$2;var __vue_render__$2=function(){var e=this,a=e.$createElement,n=e._self._c||a;return n("BaseAccordion",{staticStyle:{"--arrow-v-align":"baseline","margin-bottom":"3rem"},scopedSlots:e._u([{key:"title",fn:function(){return[e._t("title")]},proxy:!0}],null,!0)},[e._v(" "),n("div",{staticClass:"flex flex-wrap p-4 space-x-2 rounded-2xl bg-background-secondary"},e._l(e.templateVariables,function(i){return n("span",{staticClass:"inline-block p-2 mt-2 tracking-wider rounded cursor-pointer bg-panels-bg first:ml-2 hover:shadow-outline",on:{click:function(r){return e.$emit("variable-click",i)}}},[e._v(` `+e._s(i)+` - `)])}),0)])},__vue_staticRenderFns__$2=[];const __vue_inject_styles__$2=void 0,__vue_scope_id__$2=void 0,__vue_is_functional_template__$2=!1;function __vue_normalize__$2(e,a,n,i,r,s,l,c){const o=(typeof n=="function"?n.options:n)||{};return o.__file="TemplateVariablesList.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,r&&(o.functional=!0)),o._scopeId=i,o}var TemplateVariablesList=__vue_normalize__$2({render:__vue_render__$2,staticRenderFns:__vue_staticRenderFns__$2},__vue_inject_styles__$2,__vue_script__$2,__vue_scope_id__$2,__vue_is_functional_template__$2),script$1={components:{BaseAccordion,TemplateVariablesList},data(){return{flags,currentLocale:this.$i18n.locale,locales:this.$i18n.availableLocales,settings:{tags:{}},lastSettings:{},spotifyFeatures:{},lastCredentials:{},defaultSettings:{},lastUser:"",spotifyUser:"",accountNum:0,accounts:[],trackTemplateVariables}},computed:{...mapGetters({arl:"getARL",user:"getUser",isLoggedIn:"isLoggedIn",clientMode:"getClientMode",previewVolume:"getPreviewVolume",hasSlimDownloads:"getSlimDownloads",hasSlimSidebar:"getSlimSidebar"}),needToWait(){return Object.keys(this.getSettings).length===0},modelVolume:{get(){return this.previewVolume},set:debounce(function(e){this.setPreviewVolume(e)},20)},modelSlimDownloads:{get(){return this.hasSlimDownloads},set(e){this.setSlimDownloads(e)}},modelSlimSidebar:{get(){return this.hasSlimSidebar},set(e){this.setSlimSidebar(e)}},pictureHref(){return`https://e-cdns-images.dzcdn.net/images/user/${this.user.picture}/125x125-000000-80-0-0.jpg`}},async mounted(){const{settingsData:e,defaultSettingsData:a,spotifyCredentials:n}=await getSettingsData();this.defaultSettings=a,this.initSettings(e,n);let i=localStorage.getItem("accountNum");i&&(this.accountNum=i);let r=localStorage.getItem("spotifyUser");r&&(this.lastUser=r,this.spotifyUser=r,socket.emit("update_userSpotifyPlaylists",r)),socket.on("updateSettings",this.updateSettings),socket.on("accountChanged",this.accountChanged),socket.on("familyAccounts",this.initAccounts),socket.on("downloadFolderSelected",this.downloadFolderSelected),socket.on("applogin_arl",this.loggedInViaDeezer),this.$on("hook:destroyed",()=>{socket.off("updateSettings"),socket.off("accountChanged"),socket.off("familyAccounts"),socket.off("downloadFolderSelected"),socket.off("applogin_arl")})},methods:{...mapActions({dispatchARL:"setARL",setPreviewVolume:"setPreviewVolume",setSlimDownloads:"setSlimDownloads",setSlimSidebar:"setSlimSidebar"}),onTemplateVariableClick(e){copyToClipboard(e),toast(`Copied ${e} to clipboard!`)},revertSettings(){this.settings=JSON.parse(JSON.stringify(this.lastSettings))},revertCredentials(){this.spotifyCredentials=JSON.parse(JSON.stringify(this.lastCredentials)),this.spotifyUser=(" "+this.lastUser).slice(1)},copyARLtoClipboard(){let e=this.$refs.loginInput;e.setAttribute("type","text"),e.select(),e.setSelectionRange(0,99999),document.execCommand("copy"),e.setAttribute("type","password"),toast(this.$t("settings.toasts.ARLcopied"),"assignment")},changeLocale(e){this.$i18n.locale=e,this.currentLocale=e,localStorage.setItem("locale",e)},saveSettings(){this.lastSettings=JSON.parse(JSON.stringify(this.settings)),this.lastCredentials=JSON.parse(JSON.stringify(this.spotifyFeatures));let e=!1;this.lastUser!=this.spotifyUser&&(this.lastUser=(" "+this.spotifyUser).slice(1),localStorage.setItem("spotifyUser",this.lastUser),e=!0),socket.emit("saveSettings",this.lastSettings,this.lastCredentials,e?this.lastUser:!1)},selectDownloadFolder(){socket.emit("selectDownloadFolder")},downloadFolderSelected(e){this.$set(this.settings,"downloadLocation",e)},loadSettings(e){this.lastSettings=JSON.parse(JSON.stringify(e)),this.settings=JSON.parse(JSON.stringify(e))},loadCredentials(e){this.lastCredentials=JSON.parse(JSON.stringify(e)),this.spotifyFeatures=JSON.parse(JSON.stringify(e))},async loggedInViaDeezer(e){this.dispatchARL({arl:e})},async login(){let e=this.$refs.loginInput.value.trim();if(e&&e!==this.arl){const a=await fetchData("login-arl",{arl:e,force:!0,child:this.accountNum},"POST");this.loggedInViaDeezer(a.arl)}},appLogin(e){socket.emit("applogin")},changeAccount(){socket.emit("changeAccount",this.accountNum)},accountChanged(e,a){this.$refs.username.innerText=e.name,this.$refs.userpicture.src=`https://e-cdns-images.dzcdn.net/images/user/${e.picture}/125x125-000000-80-0-0.jpg`,this.accountNum=a,localStorage.setItem("accountNum",this.accountNum)},initAccounts(e){this.accounts=e},logout(){socket.emit("logout")},initSettings(e,a){this.loadSettings(e),this.loadCredentials(a),toast(this.$t("settings.toasts.init"),"settings")},updateSettings(e,a){this.loadSettings(e),this.loadCredentials(a),toast(this.$t("settings.toasts.update"),"settings")},resetToDefault(){!confirm(this.$t("settings.resetMessage"))||(this.settings=JSON.parse(JSON.stringify(this.defaultSettings)),toast(this.$t("settings.toasts.reset"),"settings"))}}};const __vue_script__$1=script$1;var __vue_render__$1=function(){var e=this,a=e.$createElement,n=e._self._c||a;return n("div",{staticClass:"fixed-footer"},[n("h1",{staticClass:"mb-8 text-5xl"},[e._v(e._s(e.$t("settings.title")))]),e._v(" "),e.isLoggedIn?n("div",{ref:"loggedInInfo",attrs:{id:"logged_in_info"}},[n("img",{ref:"userpicture",staticClass:"w-32 h-32 rounded-full",attrs:{id:"settings_picture",src:e.pictureHref,alt:"Profile Picture"}}),e._v(" "),n("i18n",{attrs:{path:"settings.login.loggedIn",tag:"p"},scopedSlots:e._u([{key:"username",fn:function(){return[n("strong",{ref:"username",attrs:{id:"settings_username"}},[e._v(e._s(e.user.name||"not logged"))])]},proxy:!0}],null,!1,2821744753)}),e._v(" "),n("button",{staticClass:"btn btn-primary",on:{click:e.logout}},[e._v(` + `)])}),0)])},__vue_staticRenderFns__$2=[];const __vue_inject_styles__$2=void 0,__vue_scope_id__$2=void 0,__vue_is_functional_template__$2=!1;function __vue_normalize__$2(e,a,n,i,r,s,l,c){const o=(typeof n=="function"?n.options:n)||{};return o.__file="TemplateVariablesList.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,r&&(o.functional=!0)),o._scopeId=i,o}var TemplateVariablesList=__vue_normalize__$2({render:__vue_render__$2,staticRenderFns:__vue_staticRenderFns__$2},__vue_inject_styles__$2,__vue_script__$2,__vue_scope_id__$2,__vue_is_functional_template__$2),script$1={components:{BaseAccordion,TemplateVariablesList},data(){return{flags,currentLocale:this.$i18n.locale,locales:this.$i18n.availableLocales,settings:{tags:{}},lastSettings:{},spotifyFeatures:{},lastCredentials:{},defaultSettings:{},lastUser:"",spotifyUser:"",accountNum:0,accounts:[],trackTemplateVariables}},computed:{...mapGetters({arl:"getARL",user:"getUser",isLoggedIn:"isLoggedIn",clientMode:"getClientMode",previewVolume:"getPreviewVolume",hasSlimDownloads:"getSlimDownloads",hasSlimSidebar:"getSlimSidebar"}),needToWait(){return Object.keys(this.getSettings).length===0},modelVolume:{get(){return this.previewVolume},set:debounce(function(e){this.setPreviewVolume(e)},20)},modelSlimDownloads:{get(){return this.hasSlimDownloads},set(e){this.setSlimDownloads(e)}},modelSlimSidebar:{get(){return this.hasSlimSidebar},set(e){this.setSlimSidebar(e)}},pictureHref(){return`https://e-cdns-images.dzcdn.net/images/user/${this.user.picture}/125x125-000000-80-0-0.jpg`}},async mounted(){const{settingsData:e,defaultSettingsData:a,spotifyCredentials:n}=await getSettingsData();this.defaultSettings=a,this.initSettings(e,n);let i=localStorage.getItem("accountNum");i&&(this.accountNum=i);let r=localStorage.getItem("spotifyUser");r&&(this.lastUser=r,this.spotifyUser=r,socket.emit("update_userSpotifyPlaylists",r)),socket.on("updateSettings",this.updateSettings),socket.on("accountChanged",this.accountChanged),socket.on("familyAccounts",this.initAccounts),socket.on("downloadFolderSelected",this.downloadFolderSelected),socket.on("applogin_arl",this.loggedInViaDeezer),this.$on("hook:destroyed",()=>{socket.off("updateSettings"),socket.off("accountChanged"),socket.off("familyAccounts"),socket.off("downloadFolderSelected"),socket.off("applogin_arl")})},methods:{...mapActions({dispatchARL:"setARL",setPreviewVolume:"setPreviewVolume",setSlimDownloads:"setSlimDownloads",setSlimSidebar:"setSlimSidebar"}),onTemplateVariableClick(e){copyToClipboard(e),toast(`Copied ${e} to clipboard!`)},revertSettings(){this.settings=JSON.parse(JSON.stringify(this.lastSettings))},revertCredentials(){this.spotifyCredentials=JSON.parse(JSON.stringify(this.lastCredentials)),this.spotifyUser=(" "+this.lastUser).slice(1)},copyARLtoClipboard(){let e=this.$refs.loginInput;e.setAttribute("type","text"),e.select(),e.setSelectionRange(0,99999),document.execCommand("copy"),e.setAttribute("type","password"),toast(this.$t("settings.toasts.ARLcopied"),"assignment")},changeLocale(e){this.$i18n.locale=e,this.currentLocale=e,localStorage.setItem("locale",e)},saveSettings(){this.lastSettings=JSON.parse(JSON.stringify(this.settings)),this.lastCredentials=JSON.parse(JSON.stringify(this.spotifyFeatures));let e=!1;this.lastUser!=this.spotifyUser&&(this.lastUser=(" "+this.spotifyUser).slice(1),localStorage.setItem("spotifyUser",this.lastUser),e=!0),socket.emit("saveSettings",{settings:this.lastSettings,spotifySettings:this.lastCredentials,spotifyUser:e?this.lastUser:!1})},selectDownloadFolder(){socket.emit("selectDownloadFolder")},downloadFolderSelected(e){this.$set(this.settings,"downloadLocation",e)},loadSettings(e){this.lastSettings=JSON.parse(JSON.stringify(e)),this.settings=JSON.parse(JSON.stringify(e))},loadCredentials(e){this.lastCredentials=JSON.parse(JSON.stringify(e)),this.spotifyFeatures=JSON.parse(JSON.stringify(e))},async loggedInViaDeezer(e){this.dispatchARL({arl:e})},async login(){let e=this.$refs.loginInput.value.trim();if(e&&e!==this.arl){const a=await fetchData("login-arl",{arl:e,force:!0,child:this.accountNum},"POST");this.loggedInViaDeezer(a.arl)}},appLogin(e){socket.emit("applogin")},changeAccount(){socket.emit("changeAccount",this.accountNum)},accountChanged(e,a){this.$refs.username.innerText=e.name,this.$refs.userpicture.src=`https://e-cdns-images.dzcdn.net/images/user/${e.picture}/125x125-000000-80-0-0.jpg`,this.accountNum=a,localStorage.setItem("accountNum",this.accountNum)},initAccounts(e){this.accounts=e},logout(){socket.emit("logout")},initSettings(e,a){this.loadSettings(e),this.loadCredentials(a),toast(this.$t("settings.toasts.init"),"settings")},updateSettings(e){const{settings:a,spotifySettings:n}=e;this.loadSettings(a),this.loadCredentials(n),toast(this.$t("settings.toasts.update"),"settings")},resetToDefault(){!confirm(this.$t("settings.resetMessage"))||(this.settings=JSON.parse(JSON.stringify(this.defaultSettings)),toast(this.$t("settings.toasts.reset"),"settings"))}}};const __vue_script__$1=script$1;var __vue_render__$1=function(){var e=this,a=e.$createElement,n=e._self._c||a;return n("div",{staticClass:"fixed-footer"},[n("h1",{staticClass:"mb-8 text-5xl"},[e._v(e._s(e.$t("settings.title")))]),e._v(" "),e.isLoggedIn?n("div",{ref:"loggedInInfo",attrs:{id:"logged_in_info"}},[n("img",{ref:"userpicture",staticClass:"w-32 h-32 rounded-full",attrs:{id:"settings_picture",src:e.pictureHref,alt:"Profile Picture"}}),e._v(" "),n("i18n",{attrs:{path:"settings.login.loggedIn",tag:"p"},scopedSlots:e._u([{key:"username",fn:function(){return[n("strong",{ref:"username",attrs:{id:"settings_username"}},[e._v(e._s(e.user.name||"not logged"))])]},proxy:!0}],null,!1,2821744753)}),e._v(" "),n("button",{staticClass:"btn btn-primary",on:{click:e.logout}},[e._v(` `+e._s(e.$t("settings.login.logout"))+` `)]),e._v(" "),e.accounts.length>1?n("select",{directives:[{name:"model",rawName:"v-model",value:e.accountNum,expression:"accountNum"}],attrs:{id:"family_account"},on:{change:[function(i){var r=Array.prototype.filter.call(i.target.options,function(s){return s.selected}).map(function(s){var l="_value"in s?s._value:s.value;return l});e.accountNum=i.target.multiple?r:r[0]},e.changeAccount]}},e._l(e.accounts,function(i,r){return n("option",{key:i,domProps:{value:r.toString()}},[e._v(` `+e._s(i.name)+` @@ -4877,7 +4877,7 @@ a { `+e._s(e.$t("settings.spotify.title"))+` `)])]},proxy:!0}])},[e._v(" "),n("RouterLink",{attrs:{to:{name:"Spotify Features"}}},[e._v(` `+e._s(e.$t("settings.spotify.question"))+` - `)]),e._v(" "),n("div",{staticClass:"input-group"},[n("p",{staticClass:"input-group-text"},[e._v(e._s(e.$t("settings.spotify.clientID")))]),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.spotifyFeatures.clientId,expression:"spotifyFeatures.clientId"}],attrs:{type:"text"},domProps:{value:e.spotifyFeatures.clientId},on:{input:function(i){i.target.composing||e.$set(e.spotifyFeatures,"clientId",i.target.value)}}})]),e._v(" "),n("div",{staticClass:"input-group"},[n("p",{staticClass:"input-group-text"},[e._v(e._s(e.$t("settings.spotify.clientSecret")))]),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.spotifyFeatures.clientSecret,expression:"spotifyFeatures.clientSecret"}],attrs:{type:"password"},domProps:{value:e.spotifyFeatures.clientSecret},on:{input:function(i){i.target.composing||e.$set(e.spotifyFeatures,"clientSecret",i.target.value)}}})]),e._v(" "),n("div",{staticClass:"input-group"},[n("p",{staticClass:"input-group-text"},[e._v(e._s(e.$t("settings.spotify.username")))]),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.spotifyUser,expression:"spotifyUser"}],attrs:{type:"text"},domProps:{value:e.spotifyUser},on:{input:function(i){i.target.composing||(e.spotifyUser=i.target.value)}}})])],1),e._v(" "),n("footer",{staticClass:"bg-background-main"},[n("button",{staticClass:"mr-2 btn btn-primary",on:{click:e.resetToDefault}},[e._v(e._s(e.$t("settings.reset")))]),e._v(" "),n("button",{staticClass:"btn btn-primary",on:{click:e.saveSettings}},[e._v(e._s(e.$t("settings.save")))])])],1)},__vue_staticRenderFns__$1=[];const __vue_inject_styles__$1=function(e){!e||e("data-v-4d741872_0",{source:"#logged_in_info[data-v-4d741872]{display:flex;align-items:center;flex-direction:column;justify-content:space-evenly;height:250px}.locale-flag[data-v-4d741872]{justify-content:center;cursor:pointer;width:60px}.locale-flag[data-v-4d741872]:not(:last-child){margin-right:10px}.locale-flag.locale-flag--current svg[data-v-4d741872]{filter:brightness(1)}.locale-flag[data-v-4d741872] svg{width:40px!important;height:40px!important;filter:brightness(.5)}.settings-group[data-v-4d741872]{border-top-width:1px;border-color:gray}.settings-group__header[data-v-4d741872]{display:inline-flex;align-items:center;padding-top:2rem;padding-bottom:2rem;font-size:1.5rem}.settings-group__header i.material-icons[data-v-4d741872]{margin-right:1rem}.settings-container[data-v-4d741872]{display:flex}.settings-container__half[data-v-4d741872]{width:50%}.settings-container__third[data-v-4d741872]{width:33%}.settings-container__third--only-checkbox[data-v-4d741872]{display:flex;align-items:start;flex-direction:column;justify-content:center}.settings-container__half>*[data-v-4d741872],.settings-container__third>*[data-v-4d741872]{margin-bottom:1rem}.with-checkbox[data-v-4d741872]{display:flex;align-items:center}.with-checkbox [type=checkbox][data-v-4d741872]{cursor:pointer}.with-checkbox .checkbox-text[data-v-4d741872]{margin-left:10px;cursor:pointer;user-select:none}.input-group .input-group-text[data-v-4d741872]{margin-bottom:.5rem}",map:void 0,media:void 0})},__vue_scope_id__$1="data-v-4d741872",__vue_module_identifier__=void 0,__vue_is_functional_template__$1=!1;function __vue_normalize__$1(e,a,n,i,r,s,l,c){const o=(typeof n=="function"?n.options:n)||{};o.__file="Settings.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,r&&(o.functional=!0)),o._scopeId=i;{let u;if(a&&(u=function(d){a.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(h,m){return u.call(m),d(h,m)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__(){const e=document.head||document.getElementsByTagName("head")[0],a=__vue_create_injector__.styles||(__vue_create_injector__.styles={}),n=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(r,s){if(document.querySelector('style[data-vue-ssr-id~="'+r+'"]'))return;const l=n?s.media||"default":r,c=a[l]||(a[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(r)){let o=s.source,u=c.ids.length;if(c.ids.push(r),s.map&&(o+=` + `)]),e._v(" "),n("div",{staticClass:"input-group"},[n("p",{staticClass:"input-group-text"},[e._v(e._s(e.$t("settings.spotify.clientID")))]),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.spotifyFeatures.clientId,expression:"spotifyFeatures.clientId"}],attrs:{type:"text"},domProps:{value:e.spotifyFeatures.clientId},on:{input:function(i){i.target.composing||e.$set(e.spotifyFeatures,"clientId",i.target.value)}}})]),e._v(" "),n("div",{staticClass:"input-group"},[n("p",{staticClass:"input-group-text"},[e._v(e._s(e.$t("settings.spotify.clientSecret")))]),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.spotifyFeatures.clientSecret,expression:"spotifyFeatures.clientSecret"}],attrs:{type:"password"},domProps:{value:e.spotifyFeatures.clientSecret},on:{input:function(i){i.target.composing||e.$set(e.spotifyFeatures,"clientSecret",i.target.value)}}})]),e._v(" "),n("div",{staticClass:"input-group"},[n("p",{staticClass:"input-group-text"},[e._v(e._s(e.$t("settings.spotify.username")))]),e._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:e.spotifyUser,expression:"spotifyUser"}],attrs:{type:"text"},domProps:{value:e.spotifyUser},on:{input:function(i){i.target.composing||(e.spotifyUser=i.target.value)}}})])],1),e._v(" "),n("footer",{staticClass:"bg-background-main"},[n("button",{staticClass:"mr-2 btn btn-primary",on:{click:e.resetToDefault}},[e._v(e._s(e.$t("settings.reset")))]),e._v(" "),n("button",{staticClass:"btn btn-primary",on:{click:e.saveSettings}},[e._v(e._s(e.$t("settings.save")))])])],1)},__vue_staticRenderFns__$1=[];const __vue_inject_styles__$1=function(e){!e||e("data-v-55859b53_0",{source:"#logged_in_info[data-v-55859b53]{display:flex;align-items:center;flex-direction:column;justify-content:space-evenly;height:250px}.locale-flag[data-v-55859b53]{justify-content:center;cursor:pointer;width:60px}.locale-flag[data-v-55859b53]:not(:last-child){margin-right:10px}.locale-flag.locale-flag--current svg[data-v-55859b53]{filter:brightness(1)}.locale-flag[data-v-55859b53] svg{width:40px!important;height:40px!important;filter:brightness(.5)}.settings-group[data-v-55859b53]{border-top-width:1px;border-color:gray}.settings-group__header[data-v-55859b53]{display:inline-flex;align-items:center;padding-top:2rem;padding-bottom:2rem;font-size:1.5rem}.settings-group__header i.material-icons[data-v-55859b53]{margin-right:1rem}.settings-container[data-v-55859b53]{display:flex}.settings-container__half[data-v-55859b53]{width:50%}.settings-container__third[data-v-55859b53]{width:33%}.settings-container__third--only-checkbox[data-v-55859b53]{display:flex;align-items:start;flex-direction:column;justify-content:center}.settings-container__half>*[data-v-55859b53],.settings-container__third>*[data-v-55859b53]{margin-bottom:1rem}.with-checkbox[data-v-55859b53]{display:flex;align-items:center}.with-checkbox [type=checkbox][data-v-55859b53]{cursor:pointer}.with-checkbox .checkbox-text[data-v-55859b53]{margin-left:10px;cursor:pointer;user-select:none}.input-group .input-group-text[data-v-55859b53]{margin-bottom:.5rem}",map:void 0,media:void 0})},__vue_scope_id__$1="data-v-55859b53",__vue_module_identifier__=void 0,__vue_is_functional_template__$1=!1;function __vue_normalize__$1(e,a,n,i,r,s,l,c){const o=(typeof n=="function"?n.options:n)||{};o.__file="Settings.vue",o.render||(o.render=e.render,o.staticRenderFns=e.staticRenderFns,o._compiled=!0,r&&(o.functional=!0)),o._scopeId=i;{let u;if(a&&(u=function(d){a.call(this,l(d))}),u!==void 0)if(o.functional){const d=o.render;o.render=function(h,m){return u.call(m),d(h,m)}}else{const d=o.beforeCreate;o.beforeCreate=d?[].concat(d,u):[u]}}return o}function __vue_create_injector__(){const e=document.head||document.getElementsByTagName("head")[0],a=__vue_create_injector__.styles||(__vue_create_injector__.styles={}),n=typeof navigator!="undefined"&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());return function(r,s){if(document.querySelector('style[data-vue-ssr-id~="'+r+'"]'))return;const l=n?s.media||"default":r,c=a[l]||(a[l]={ids:[],parts:[],element:void 0});if(!c.ids.includes(r)){let o=s.source,u=c.ids.length;if(c.ids.push(r),s.map&&(o+=` /*# sourceURL=`+s.map.sources[0]+" */",o+=` /*# sourceMappingURL=data:application/json;base64,`+btoa(unescape(encodeURIComponent(JSON.stringify(s.map))))+" */"),n&&(c.element=c.element||document.querySelector("style[data-group="+l+"]")),!c.element){const d=c.element=document.createElement("style");d.type="text/css",s.media&&d.setAttribute("media",s.media),n&&(d.setAttribute("data-group",l),d.setAttribute("data-next-index","0")),e.appendChild(d)}if(n&&(u=parseInt(c.element.getAttribute("data-next-index")),c.element.setAttribute("data-next-index",u+1)),c.element.styleSheet)c.parts.push(o),c.element.styleSheet.cssText=c.parts.filter(Boolean).join(` `);else{const d=document.createTextNode(o),f=c.element.childNodes;f[u]&&c.element.removeChild(f[u]),f.length?c.element.insertBefore(d,f[u]):c.element.appendChild(d)}}}}var Settings=__vue_normalize__$1({render:__vue_render__$1,staticRenderFns:__vue_staticRenderFns__$1},__vue_inject_styles__$1,__vue_script__$1,__vue_scope_id__$1,__vue_is_functional_template__$1,__vue_module_identifier__,__vue_create_injector__),script={data(){return{title:"",metadata:"",release_date:"",label:"",explicit:!1,image:"",type:"empty",link:"",body:[]}},mounted(){EventBus.$on("showAlbum",this.showAlbum),EventBus.$on("showPlaylist",this.showPlaylist),EventBus.$on("showSpotifyPlaylist",this.showSpotifyPlaylist)},methods:{playPausePreview,reset(){this.title="Loading...",this.image="",this.metadata="",this.label="",this.release_date="",this.explicit=!1,this.type="empty",this.body=[]},addToQueue(e){sendAddToQueue(e.currentTarget.dataset.link)},toggleAll(e){this.body.forEach(a=>{a.type==="track"&&(a.selected=e.currentTarget.checked)})},selectedLinks(){const e=[];return this.body&&this.body.forEach(a=>{a.type==="track"&&a.selected&&e.push(this.type==="spotifyPlaylist"?a.uri:a.link)}),e.join(";")},convertDuration:Utils.convertDuration,showAlbum(e){this.reset();const{id:a,title:n,explicit_lyrics:i,label:r,artist:{name:s},tracks:l,tracks:{length:c},release_date:o,cover_xl:u}=e;this.type="album",this.link=`https://www.deezer.com/album/${a}`,this.title=n,this.explicit=i,this.label=r,this.metadata=`${s} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,this.release_date=o.substring(0,10),this.image=u,isEmpty(l)?this.body=null:this.body=l},showPlaylist(e){this.reset();const{id:a,title:n,picture_xl:i,creation_date:r,creator:{name:s},tracks:l,tracks:{length:c}}=e;this.type="playlist",this.link=`https://www.deezer.com/playlist/${a}`,this.title=n,this.image=i,this.release_date=r.substring(0,10),this.metadata=`${this.$t("globals.by",{artist:s})} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,isEmpty(l)?this.body=null:this.body=l},showSpotifyPlaylist(e){this.reset();const{uri:a,name:n,images:i,images:{length:r},owner:{display_name:s},tracks:l,tracks:{length:c}}=e;this.type="spotifyPlaylist",this.link=a,this.title=n,this.image=r?i[0].url:"https://e-cdns-images.dzcdn.net/images/cover/d41d8cd98f00b204e9800998ecf8427e/1000x1000-000000-80-0-0.jpg",this.release_date="",this.metadata=`${this.$t("globals.by",{artist:s})} \u2022 ${this.$tc("globals.listTabs.trackN",c)}`,isEmpty(l)?this.body=null:this.body=l},selectRow(e,a){a.selected=!a.selected}}};const __vue_script__=script;var __vue_render__=function(){var e=this,a=e.$createElement,n=e._self._c||a;return n("div",{ref:"root",staticClass:"relative fixed-footer bg-background-main image-header"},[n("header",{style:{"background-image":"linear-gradient(to bottom, transparent 0%, var(--main-background) 100%), url('"+e.image+"')"}},[n("h1",{staticClass:"flex items-center m-0 text-5xl"},[e._v(` diff --git a/src/components/pages/Settings.vue b/src/components/pages/Settings.vue index 91ed671..bd6cd44 100644 --- a/src/components/pages/Settings.vue +++ b/src/components/pages/Settings.vue @@ -934,7 +934,11 @@ export default { changed = true } - socket.emit('saveSettings', this.lastSettings, this.lastCredentials, changed ? this.lastUser : false) + socket.emit('saveSettings', { + settings: this.lastSettings, + spotifySettings: this.lastCredentials, + spotifyUser: changed ? this.lastUser : false + }) }, selectDownloadFolder() { socket.emit('selectDownloadFolder') @@ -989,7 +993,8 @@ export default { toast(this.$t('settings.toasts.init'), 'settings') }, - updateSettings(newSettings, newCredentials) { + updateSettings(data) { + const {settings: newSettings, spotifySettings: newCredentials} = data this.loadSettings(newSettings) this.loadCredentials(newCredentials)