orchard/src/renderer/views/pages/library-songs.ejs
Maikiwi 8ee22f615d
Sync I don't commit now is the conflict of the tomorrow (#472)
* 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

* Removed Discord clear on pause

* Linux frame

* fix #459

* Fix

* exposed --songProgressColor and --songProgressBackground

* revert

* Revert "revert"

This reverts commit 24313b53cf.

* ok?

* Revert "ok?"

This reverts commit 9218ccc887.

* ok

* fix adding/remove mvs from library

* Created audio controls menu

* Added start-renderer command for easier testing

* shitty floats shitty shitty

* LastFM can be unique and have its own call

* Revert "LastFM can be unique and have its own call"

This reverts commit d36e1b19f6.

* Revert "Merge branch 'develop' into develop"

This reverts commit 5fa345e6c8, reversing
changes made to a02b633f49.

* Revert "Revert "LastFM can be unique and have its own call""

This reverts commit f156083d48.

* Revert "Merge branch 'ciderapp:develop' into develop"

This reverts commit 20fd0c05da, reversing
changes made to 4937e29fcf.

* lastfm changes

* i hate lastfm

like really really
hate
it

* Revert "Merge remote-tracking branch 'origin/develop' into develop"

This reverts commit 5b360e74fa, reversing
changes made to 548688341d.

* Revert "Revert "Merge remote-tracking branch 'origin/develop' into develop""

This reverts commit 0fb6802ff3.

* Revert "Merge branch 'develop' of https://github.com/ciderapp/Cider into develop"

This reverts commit bd3a2b6172, reversing
changes made to 0fb6802ff3.

* volume step i18n

* and git can go in the bin too

* Added OpenAppData button in settings and updated layout/translations

* change in translation README.md

* margin: 0 on song-progress

* fix np navigation on some songs

* enables native linux chrome

* replay wip

* replay, added this year

* fix for library status

* added attributes.playparams.id

* replay banner

* changed colors

* fancy animations

* more fancy

* some changes

* add play button in library-songs page

* fix

* improve drag on topbar

* Generating top genres, made buttons nicer on replay

* changes to replay graphs

* Revert "Merge branch 'innolab' into develop"

This reverts commit b740f76e3c, reversing
changes made to a5746f08fa.

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>
Co-authored-by: Core <64542347+coredev-uk@users.noreply.github.com>
Co-authored-by: booploops <49113086+booploops@users.noreply.github.com>
2022-02-17 18:41:29 -08:00

111 lines
No EOL
5.6 KiB
Text

<script type="text/x-template" id="cider-library-songs">
<div class="content-inner library-page">
<div class="library-header">
<div class="row">
<div class="col" style="padding:0;">
<div class="search-input-container" style="width:100%;margin: 16px 0;">
<div class="search-input--icon"></div>
<input type="search"
style="width:100%;"
spellcheck="false"
:placeholder="app.getLz('term.search') + '...'"
@input="$root.searchLibrarySongs"
v-model="library.songs.search" class="search-input">
</div>
</div>
<div class="col-auto flex-center">
<div class="row">
<button class="col md-btn md-btn-primary md-btn-icon" style="min-width: 100px;margin-right: 3px;"
@click="app.mk.shuffleMode = 0; play()"> <img class="md-ico-play">
{{app.getLz('term.play')}}
</button>
<button class="col md-btn md-btn-primary md-btn-icon" style="min-width: 100px;margin-right: 3px;"
@click="app.mk.shuffleMode = 1;play()"> <img class="md-ico-shuffle">
{{app.getLz('term.shuffle')}}
</button>
<div class="col">
<select class="md-select" v-model="prefs.sort" @change="$root.searchLibrarySongs()">
<optgroup :label="app.getLz('term.sortBy')">
<option v-for="(sort, index) in library.songs.sortingOptions" :value="index">{{ sort }}</option>
</optgroup>
</select>
</div>
<div class="col">
<select class="md-select" v-model="prefs.sortOrder" @change="$root.searchLibrarySongs()">
<optgroup :label="app.getLz('term.sortOrder')">
<option value="asc">{{app.getLz('term.sortOrder.ascending')}}</option>
<option value="desc">{{app.getLz('term.sortOrder.descending')}}</option>
</optgroup>
</select>
</div>
<div class="col">
<select class="md-select" v-model="prefs.size" @change="$root.searchLibrarySongs()">
<optgroup :label="app.getLz('term.size')">
<option value="normal">{{app.getLz('term.size.normal')}}</option>
<option value="compact">{{app.getLz('term.size.compact')}}</option>
</optgroup>
</select>
</div>
</div>
</div>
<div class="col-auto flex-center">
<button v-if="library.songs.downloadState == 2" @click="$root.getLibrarySongsFull(true)" class="reload-btn"><%- include('../svg/redo.svg') %></button>
<button v-else class="reload-btn" style="opacity: 0.8;pointer-events: none">
<div class="spinner"></div>
</button>
</div>
</div>
</div>
<div v-if="library.songs.downloadState == 3">Library contains no songs.</div>
<div class="well" :key="1" v-if="prefs.size == 'compact'">
<mediaitem-list-item class-list="compact" :item="item" :parent="'librarysongs'" :index="index" :show-meta-data="true" :show-library-status="false" v-for="(item, index) in library.songs.displayListing"></mediaitem-list-item>
</div>
<div class="well" :key="2" v-else>
<mediaitem-list-item :item="item" :parent="'librarysongs'" :index="index" :show-meta-data="true" :show-library-status="false" v-for="(item, index) in library.songs.displayListing"></mediaitem-list-item>
</div>
</div>
</script>
<script>
Vue.component('cider-library-songs', {
template: '#cider-library-songs',
data: function () {
return {
library: this.$root.library,
mediaItemSize: "compact",
prefs: this.$root.cfg.libraryPrefs.songs,
app : this.$root
}
},
methods: {
sayHello: function () {
alert('Hello world!');
},
play: function () {
function shuffleArray(array) {
for (var i = array.length - 1; i > 0; i--) {
var j = Math.floor(Math.random() * (i + 1));
var temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
let query = this.app.library.songs.displayListing.map(item => new MusicKit.MediaItem(item));
if (!app.mk.queue.isEmpty)
app.mk.queue.splice(0, app.mk.queue._itemIDs.length);
app.mk.stop().then(() => {
if (app.mk.shuffleMode == 1) {
shuffleArray(query)
}
app.mk.queue.append(query)
app.mk.changeToMediaAtIndex(0)
});
}
}
});
</script>