import sys
import os
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QComboBox, QVBoxLayout, QPushButton, QMessageBox
import  json
from MainActivation import MainActivation
import ctypes
from PyQt5.QtGui import QFont, QIcon
class LanguageSelector(QWidget):
    def __init__(self):
        super().__init__()
        user32 = ctypes.windll.user32
        screen_width = user32.GetSystemMetrics(0)
        screen_height = user32.GetSystemMetrics(1)
        left = screen_width - 430
        top = screen_height - 250

        self.setWindowTitle("EM")
        self.setGeometry(left, top, 300, 150)
        self.setWindowIcon(QIcon('ixo.png'))
        self.lang_dir ="lang"
        self.initUI()

    def initUI(self):
        # تنظیمات صفحه


        # عنوان
        self.label = QLabel('Choose the desired language', self)
        self.setStyleSheet(  "font-size:15px")
        # لیست انتخاب زبان
        self.comboBox = QComboBox(self)
        self.populate_languages()

        # دکمه تایید
        self.button = QPushButton('confirmation', self)
        self.button.clicked.connect(self.on_confirm)

        # چیدمان صفحه
        layout = QVBoxLayout()
        layout.addWidget(self.label)
        layout.addWidget(self.comboBox)
        layout.addWidget(self.button)
        self.setLayout(layout)

    def populate_languages(self):
        # خواندن فایل‌ها از پوشه lang
        files = os.listdir(self.lang_dir)
        languages = [os.path.splitext(f)[0] for f in files if f != 'lang.json']
        self.comboBox.addItems(languages)

    def on_confirm(self):
        selected_language = self.comboBox.currentText()
        if selected_language:
            QMessageBox.information(self, 'was selected', f'Selected language : {selected_language}')
            # ذخیره زبان انتخاب شده در فایل lang.json
            lang_data = {"language": selected_language}
            with open(os.path.join(self.lang_dir, 'lang.json'), 'w', encoding='utf-8') as lang_file:
                json.dump(lang_data, lang_file, ensure_ascii=False, indent=4)
            self.welcome_window = MainActivation()
            self.welcome_window.show()
            self.close()
        else:
            QMessageBox.warning(self, 'warning', 'No language is selected')


if __name__ == '__main__':
    app = QApplication(sys.argv)

    # مسیر پوشه lang
    lang_dir = 'lang'

    #
