Compare commits

...

5 Commits

7 changed files with 27 additions and 14 deletions

View File

@ -128,7 +128,7 @@ Insert token from "Access token" here''')
current_instance.select_instance(current_instance.instance)
if selected == 'Donate':
os.system(f'less <<EOF\nSupport instance message:\n{support_message}')
os.system(f'less <<EOF\nSupport instance message:\n{support_message}\nEOF')
if selected == 'About instance':
about_instance_info = []
for i in ins_settings:
@ -143,7 +143,7 @@ Insert token from "Access token" here''')
for k, v in ins_nodeinfo['usage'].items():
about_instance_info.append(f'{k}: {v}')
about_instance_info = '\n'.join(about_instance_info)
os.system(f'less <<EOF\n{about_instance_info}')
os.system(f'less <<EOF\n{about_instance_info}\nEOF')
del about_instance_info
if selected == 'Player':
src.mpv_control.player_menu(

View File

@ -70,7 +70,7 @@ def list_albums(albums=None, pg=None, search=None, artist=None, library=None, in
def play_album(album_id):
tracks = get_tracks(album=album_id, include_channels=True)
tracks = get_tracks(album=album_id, ordering='disc_number,position', include_channels=True)
tracks_results = tracks.get('results')
storage = {}
for i in tracks_results:

View File

@ -100,11 +100,13 @@ def get_audio_file(track_uuid, listen_url=False, download=False,
@logger.catch
def get_tracks(page=None, q=None, artist=None, album=None, library=None,
def get_tracks(page=None, ordering=None, q=None,
artist=None, album=None, library=None,
tag=None, favourites=None, include_channels=None, pg=None):
'''This function get tracks by params'''
params = {
'page': page,
'ordering': ordering,
'q': q,
'artist': artist,
'album': album,
@ -178,10 +180,12 @@ def get_artists(page=None, q=None, artist=None, album=None,
@logger.catch
def get_albums(page=None, q=None, artist=None, library=None, include_channels=None, refresh=False, pg=None):
def get_albums(page=None, q=None, ordering=None,
artist=None, library=None, include_channels=None, refresh=False, pg=None):
'''This function get artists by params'''
params = {
'page': page,
'ordering': ordering,
'q': q,
'artist': artist,
'library': library,

View File

@ -55,7 +55,8 @@ def list_artists(pg=None, search=None, library=None, scope=None):
def play_artist(artist_id):
tracks = get_tracks(artist=artist_id, include_channels=True, pg=None)
tracks = get_tracks(artist=artist_id, ordering='disc_number,position',
include_channels=True, pg=None)
tracks_next = tracks.get('next')
tracks_count = tracks.get('count')
storage = {}

View File

@ -9,7 +9,6 @@ from loguru import logger
from shlex import quote
import threading
import time
import sys
fzf = FzfPrompt()
@ -94,8 +93,7 @@ def radio_generator(radio_session_id):
player.playlist_current_pos
if playlist_remaining <= 2:
radio_get_track(radio_session_id)
sys.stdout.write('\rRadio generator stopped')
sys.stdout.flush()
print('\rRadio generator stopped', flush=True)
radio_event_gen = threading.Event()

View File

@ -23,6 +23,7 @@ player.volume = get_config('mpv_volume')
player.prefetch_playlist = get_config('prefetch_playlist')
show_like_button = get_config('show_like_button')
track_activity_history = get_config('track_activity_history')
shuffle = False
class player_fw_storage:
@ -126,14 +127,19 @@ def soft_volume_reduce():
def player_menu(header='', storage={}):
player_fw_storage.storage.update(storage)
player.volume = get_config("mpv_volume")
global shuffle
while True:
try:
player_items_menu = ['Next', 'Prev', 'Pause',
'Download', 'Info']
'Shuffle', 'Download', 'Info']
if player.pause:
player_items_menu[2] = 'Play'
else:
player_items_menu[2] = 'Pause'
if shuffle:
player_items_menu[3] = 'Unshuffle'
else:
player_items_menu[3] = 'Shuffle'
if show_like_button:
player_items_menu.append('Like')
player_items_menu.extend(['Hide artist', 'Exit'])
@ -152,10 +158,14 @@ def player_menu(header='', storage={}):
elif select == 'Prev':
player.playlist_prev()
elif select in ('Pause', 'Play'):
if player.pause:
player.pause = False
player.cycle('pause')
elif select in ('Shuffle', 'Unshuffle'):
if shuffle:
shuffle = False
player.playlist_unshuffle()
else:
player.pause = True
shuffle = True
player.playlist_shuffle()
elif select == 'Download':
name_downloaded = download_track(player.stream_open_filename)
elif select == 'Info':

View File

@ -69,4 +69,4 @@ def track_info_output(track):
else:
output.append(f'{k}: {v}')
output = '\n'.join(output)
os.system(f'less <<EOF\n{output}')
os.system(f'less <<EOF\n{output}\nEOF')