* Added update check if using MSS or MAS builds. need help implementing

* fix locale / allow pl to show before list loading is fully done

* oops

* Also copy blockmap for partial download

`[2022-02-15 17:28:30.126] [error] Cannot download differentially, fallback to full download: Error: Cannot download "https://478-429851205-gh.circle-artifacts.com/0/%7E/Cider/dist/artifacts/Cider-Setup-1.1.428.exe.blockmap", status 404: Not Found
    at ClientRequest.<anonymous> (C:\Program Files\Cider\resources\app.asar\node_modules\builder-util-runtime\src\httpExecutor.ts:288:11)
    at ClientRequest.emit (node:events:394:28)
    at ClientRequest.emit (node:domain:475:12)
    at SimpleURLLoaderWrapper.<anonymous> (node:electron/js2c/browser_init:105:6829)
    at SimpleURLLoaderWrapper.emit (node:events:394:28)
    at SimpleURLLoaderWrapper.emit (node:domain:475:12)`

* more lang fix

* fix #459

Co-authored-by: child_duckling <19170969+quacksire@users.noreply.github.com>
Co-authored-by: vapormusic <vietanhfat@gmail.com>
Co-authored-by: JYW0803 <74043061+JYW0803@users.noreply.github.com>
This commit is contained in:
Maikiwi 2022-02-15 18:32:51 -08:00 committed by GitHub
parent c2dc1c479e
commit 453ebc2519
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 50 additions and 11 deletions

View file

@ -65,6 +65,7 @@ jobs:
mv ~/Cider/dist/*.AppImage ~/Cider/dist/artifacts
mv ~/Cider/dist/*.snap ~/Cider/dist/artifacts
mv ~/Cider/dist/*.yml ~/Cider/dist/artifacts
mv ~/Cider/dist/*.blockmap ~/Cider/dist/artifacts
- store_artifacts:
path: ~/Cider/dist/artifacts

View file

@ -672,6 +672,15 @@ export class BrowserWindow {
await win_autoUpdater.checkForUpdatesAndNotify()
await linux_autoUpdater.checkForUpdatesAndNotify()
});
ipcMain.on('disable-update', (event) => {
// Check if using app store builds so people don't get pissy wen button go bonk
if (app.isPackaged && !process.mas || !process.windowsStore) {
event.returnValue = false
} else {
event.returnValue = true
}
})
ipcMain.on('share-menu', async (_event, url) => {
if (process.platform != 'darwin') return;

View file

@ -555,7 +555,7 @@ const app = new Vue({
}
).then(() => {
if (this.page == 'playlist_' + this.showingPlaylist.id) {
this.getPlaylistFromID(this.showingPlaylist.id)
this.getPlaylistFromID(this.showingPlaylist.id, true)
}
})
},
@ -997,7 +997,7 @@ const app = new Vue({
console.log(res)
self.appRoute(`playlist_` + res.id);
self.showingPlaylist = [];
self.getPlaylistFromID(app.page.substring(9))
self.getPlaylistFromID(app.page.substring(9), true)
self.playlists.listing.push({
id: res.id,
attributes: {
@ -1092,7 +1092,7 @@ const app = new Vue({
response = response.data.data[0]
let self = this
let playlistId = response.id
if (!transient) this.playlists.loadingState = 0
this.playlists.loadingState = (!transient) ? 0 : 1
this.showingPlaylist = response
if (!response.relationships.tracks.next) {
this.playlists.loadingState = 1
@ -1572,14 +1572,14 @@ const app = new Vue({
if (kind == "appleCurator") {
app.appleCurator = a.data.data[0]
} else {
this.getPlaylistContinuous(a)
this.getPlaylistContinuous(a, true)
}
}
} finally {
if (kind == "appleCurator") {
app.appleCurator = a.data.data[0]
} else {
this.getPlaylistContinuous(a)
this.getPlaylistContinuous(a, true)
}
}
;
@ -3694,9 +3694,9 @@ const app = new Vue({
let u = this.cfg.general.language;
// use MusicKit.getInstance or crash
try {
item = await MusicKit.getInstance().api.v3.music(`v1/storefronts/${app.mk.storefrontId}`)
let item = await MusicKit.getInstance().api.v3.music(`v1/storefronts/${app.mk.storefrontId}`)
let langcodes = item.data.data[0].attributes.supportedLanguageTags;
if (langcodes) langcodes = langcodes.map(function (u) { return u.toLowerCase() })
if (langcodes) langcodes = langcodes.map(function (u) { return u.replace(/-Han[s|t]/i, "").toLowerCase() })
console.log(langcodes)
let sellang = ""
if (u && langcodes.includes(u.toLowerCase().replace('_', "-"))) {
@ -3705,6 +3705,11 @@ const app = new Vue({
sellang = ((u.toLowerCase()).replace('_', "-")).split("-")[0]
}
if (sellang == "") sellang = (item.data.data[0].attributes.defaultLanguageTag).toLowerCase()
// Fix weird locales:
if (sellang == "iw") sellang = "iw-il"
sellang = sellang.replace(/-Han[s|t]/i, "").toLowerCase()
console.log(sellang)
return await sellang
}

View file

@ -41,6 +41,21 @@
catch (e){}
},
watch: {
items: function (items) {
// give every item an id
this.items.forEach(function (item, index) {
item.id = index;
});
// split items into pages
this.itemPages = app.arrayToChunk(this.items, 4);
try{
this.simplifiedParent = JSON.stringify(this.items.map ( function(x){return x.attributes.playParams}));
console.log("simplifiedParent: " + this.simplifiedParent);
}
catch (e){}
}
},
methods: {
sayHello: function () {
alert('Hello world!');

View file

@ -189,7 +189,7 @@
openPlaylist(item) {
this.$root.appRoute(`playlist_` + item.id);
this.$root.showingPlaylist = [];
this.$root.getPlaylistFromID(this.$root.page.substring(9))
this.$root.getPlaylistFromID(this.$root.page.substring(9), true)
},
getPlaylistChildren(item) {
let self = this

View file

@ -656,7 +656,7 @@
<input type="checkbox" v-model="app.cfg.general.close_button_hide" switch/>
</div>
</div>
<div class="md-option-line">
<div class="md-option-line update-check">
<div class="md-option-segment">
{{$root.getLz('settings.option.general.updateCider')}}
</div>
@ -666,7 +666,7 @@
</button>
</div>
</div>
<div class="md-option-line">
<div class="md-option-line update-check">
<div class="md-option-segment">
{{$root.getLz('settings.option.general.updateCider.branch')}}<br>
<small>({{$root.getLz('settings.option.general.updateCider.branch.description')}})</small>
@ -852,6 +852,15 @@
ipcRenderer.invoke('setStoreValue', 'general.close_behavior', app.cfg.general.close_behavior);
// setStoreValue does not change plugin store values somehow
ipcRenderer.invoke('update-store-mtt', app.cfg.general.close_behavior);
},
checkIfUpdateDisabled() {
if (ipcRenderer.sendSync('disable-update')) {
let updateFields = document.getElementsByClassName('update-check');
for (var i=0; i < updateFields.length; i++) {
updateFields[i].style = "opacity: 0.5; pointer-events: none;";
updateFields[i].title = "Not available on this type of build";
}
}
}
}
})