Коммит 2ab6a21f создал по автору Леляев Петр Алексеевич's avatar Леляев Петр Алексеевич
Просмотр файлов

Bug fix: в имени папки, откуда берётся музыка, не могло быть пробелов

владелец 64c333dc
......@@ -257,7 +257,7 @@ class CallsSettings(QWidget):
if run_command(f'py-ini-config get {config_path}/school-ringer.conf Main is_breaks_music_on').strip() != 'true':
dlg = PlayMusicOnBreaksDialog(self)
if dlg.exec() == QDialog.Accepted:
music_folder = dlg.music_folder.strip() if dlg.music_folder else \
music_folder = f'{dlg.music_folder.strip()}' if dlg.music_folder else \
run_command(f'py-ini-config get {config_path}/school-ringer.conf Main music_folder').strip()
self.music_playing_thread.songs_list = [
f'"{music_folder}/{i}"' for i in os.listdir(music_folder) if (
......@@ -265,24 +265,29 @@ class CallsSettings(QWidget):
)]
if dlg.shuffle_checkbox.isChecked():
shuffle(self.music_playing_thread.songs_list)
self.music_playing_thread.start()
self.play_music_on_breaks_btn.setText('Не играть музыку')
self.real_music_on_breaks_status_label.setText(f'Играет из папки {music_folder}')
self.is_breaks_music_on = True
run_command(f'pkexec sh -c "py-ini-config set '
f'{config_path}/school-ringer.conf Main is_breaks_music_on true && '
f'py-ini-config set '
f'{config_path}/school-ringer.conf Main music_folder "{music_folder}" && '
f'py-ini-config set '
f'{config_path}/school-ringer.conf Main music_shuffle {dlg.shuffle_checkbox.isChecked()}"')
cmd = subprocess.run(f'pkexec sh -c "py-ini-config set '
f'{config_path}/school-ringer.conf Main is_breaks_music_on true && '
f'py-ini-config set '
f'{config_path}/school-ringer.conf Main music_folder \\\"{music_folder}\\\" && '
f'py-ini-config set '
f'{config_path}/school-ringer.conf Main music_shuffle '
f'{dlg.shuffle_checkbox.isChecked()}"',
shell=True)
if cmd.returncode == 0:
self.music_playing_thread.start()
self.play_music_on_breaks_btn.setText('Не играть музыку')
self.real_music_on_breaks_status_label.setText(f'Играет из папки {music_folder}')
self.is_breaks_music_on = True
else:
self.music_playing_thread.terminate()
subprocess.run('pkill play', shell=True)
self.play_music_on_breaks_btn.setText('Играть музыку на переменах')
self.real_music_on_breaks_status_label.setText(f'Отключена')
self.is_breaks_music_on = False
run_command(f'pkexec sh -c '
f'"py-ini-config set {config_path}/school-ringer.conf Main is_breaks_music_on false"')
if subprocess.run(f'pkexec sh -c "py-ini-config set {config_path}/school-ringer.conf Main '
f'is_breaks_music_on false"', shell=True).returncode == 0:
self.music_playing_thread.terminate()
subprocess.run('pkill play', shell=True)
self.play_music_on_breaks_btn.setText('Играть музыку на переменах')
self.real_music_on_breaks_status_label.setText(f'Отключена')
self.is_breaks_music_on = False
def download_instructions(self):
if not authority_check("download_instructions"):
......@@ -336,6 +341,7 @@ class CallsSettings(QWidget):
label_music_on_breaks_status.setStyleSheet("QLabel {font-weight: bold;}")
grid.addWidget(label_music_on_breaks_status, 4, 1)
self.real_music_on_breaks_status_label = QLabel()
self.real_music_on_breaks_status_label.setWordWrap(True)
if run_command(f'py-ini-config get {config_path}/school-ringer.conf Main is_breaks_music_on').strip() != 'true':
self.real_music_on_breaks_status_label.setText('Отключена')
else:
......
Поддерживает Markdown
0% или .
You are about to add 0 people to the discussion. Proceed with caution.
Сначала завершите редактирование этого сообщения!
Пожалуйста, зарегистрируйтесь или чтобы прокомментировать