همه چیز کد خوبه فقط تغییرات زیر را اعمال کن:
فونت محاسبه و محاسبه‌ی زمان‌ها را به IRTITR تغییر بده و پر رنگش کن 
همچنین، اینکه امروز چند شنبس را به فارسی بنویس، مثلاً شنبه
همچنین، کلاً سایز نوشته ها را بزرگ کن 
اسم گزینه‌ی محاسبه‌ی زمان‌ها را به «به روز رسانی اوقات» تغییر بده
همچنین، شهرهای استان شیراز، کرمان، قم، همدان را بهش اضافه کن و یک گزینه هم اضافه کن که هر علاوه بر کشور استان را هم مشخص کنه و هر وقت یک استان مشخص شد شهرهای مربوط به همان استان را نشان بده.
اسم نرم افزار را از محاسبه گر اوقات به «وقت فضیلت» تغییر بده

import sys
import requests
from PyQt5.QtCore import QTimer, Qt
from PyQt5.QtWidgets import QWidget, QVBoxLayout, QLabel, QPushButton, QLineEdit, QApplication, QComboBox, QProgressBar
from PyQt5.QtGui import QFont, QPalette, QColor
from plyer import notification
import jdatetime
from datetime import datetime, timedelta

def get_prayer_times(city, country):
    api_key = "YOUR_API_KEY"  # کلید API خود را اینجا وارد کنید
    url = f"http://api.aladhan.com/v1/timingsByCity?city={city}&country={country}&method=8"
    response = requests.get(url)

    if response.status_code == 200:
        data = response.json()
        times = data['data']['timings']
        return {"dhuhr": times["Dhuhr"], "maghrib": times["Maghrib"], "fajr": times["Fajr"]}
    else:
        return {"dhuhr": "12:00", "maghrib": "19:00", "fajr": "04:00"}

class PrayerTimeApp(QWidget):
    def __init__(self):
        super().__init__()
        self.initUI()

    def initUI(self):
        self.setWindowTitle('محاسبه گر اوقات')
        self.setGeometry(100, 100, 500, 400)

        font = QFont('B Nazanin', 14)
        self.setFont(font)

        layout = QVBoxLayout()

        self.country_selector = QComboBox(self)
        self.country_selector.setFont(font)
        self.country_selector.addItems(["ایران", "افغانستان"])
        self.country_selector.currentTextChanged.connect(self.update_cities)
        layout.addWidget(self.country_selector)

        self.city_selector = QComboBox(self)
        self.city_selector.setFont(font)
        layout.addWidget(self.city_selector)

        self.date_label = QLabel(self)
        layout.addWidget(self.date_label)

        self.dhuhr_label = QLineEdit(self)
        layout.addWidget(self.dhuhr_label)

        self.maghrib_label = QLineEdit(self)
        layout.addWidget(self.maghrib_label)

        self.fajr_label = QLineEdit(self)
        layout.addWidget(self.fajr_label)

        self.result_label = QLabel(self)
        layout.addWidget(self.result_label)

        self.loading_label = QLabel(self)
        self.loading_label.setAlignment(Qt.AlignCenter)
        layout.addWidget(self.loading_label)

        self.calculate_button = QPushButton('محاسبه', self)
        layout.addWidget(self.calculate_button)
        self.calculate_button.clicked.connect(self.update_ui)

        self.calculate_times_button = QPushButton('محاسبه زمان‌ها', self)
        layout.addWidget(self.calculate_times_button)
        self.calculate_times_button.clicked.connect(self.calculate_times)

        self.setLayout(layout)

        self.update_cities()

        self.apply_styles()

    def update_cities(self):
        country = self.country_selector.currentText()
        self.city_selector.clear()

        if country == "ایران":
            cities = ["مشهد", "تهران", "بیرجند", "نیشابور", "سبزوار", "تربت حیدریه", "قوچان", "کاشمر", "سرخس",
                      "بجنورد", "شیروان", "اسفراین", "آشخانه", "ری", "شهریار", 
                      "اسلامشهر", "ورامین", "همدان", "اصفهان", "کاشان", "نجف‌آباد", "خمینی‌شهر", "شهرضا"]
        elif country == "افغانستان":
            cities = ["کابل", "هرات", "مزار شریف", "قندهار", "جلال‌آباد"]

        self.city_selector.addItems(cities)

    def update_ui(self):
        city = self.city_selector.currentText()
        country = self.country_selector.currentText()
        if country == "ایران":
            country = "Iran"
        elif country == "افغانستان":
            country = "Afghanistan"
        
        if city:
            self.loading_label.setText("لطفاً منتظر باشید...")
            QApplication.processEvents()  # Force UI update to show loading text

            try:
                times = get_prayer_times(city, country)
                self.dhuhr_label.setText(self.to_persian_digits(times["dhuhr"]))
                self.maghrib_label.setText(self.to_persian_digits(times["maghrib"]))
                self.fajr_label.setText(self.to_persian_digits(times["fajr"]))
                self.loading_label.setText("")  # Clear loading text
            except Exception as e:
                self.result_label.setText(f"خطا در دریافت اطلاعات: {str(e)}")
                self.loading_label.setText("")  # Clear loading text

            now = jdatetime.datetime.now()
            jalali_date = now.strftime("%Y/%m/%d")
            week_day = now.strftime("%A")
            full_date = f"{self.to_persian_digits(jalali_date)} - {week_day}"
            self.date_label.setText(full_date)

    def calculate_times(self):
        try:
            dhuhr_time = datetime.strptime(self.from_persian_digits(self.dhuhr_label.text()), '%H:%M')
            maghrib_time = datetime.strptime(self.from_persian_digits(self.maghrib_label.text()), '%H:%M')
            fajr_time = datetime.strptime(self.from_persian_digits(self.fajr_label.text()), '%H:%M')

            if fajr_time < maghrib_time:
                fajr_time += timedelta(days=1)

            duration_dhuhr_maghrib = maghrib_time - dhuhr_time
            two_third_dhuhr_maghrib = duration_dhuhr_maghrib * 2 / 3

            two_third_time = dhuhr_time + two_third_dhuhr_maghrib

            duration = fajr_time - maghrib_time
            one_quarter = duration / 4
            one_third = duration / 3

            one_quarter_time = maghrib_time + one_quarter
            one_third_time = maghrib_time + one_third

            result_text = f"۲ سوم زمان بین ظهر و غروب: {self.to_persian_digits(two_third_time.strftime('%H:%M'))}\n"
            result_text += f"۱ چهارم زمان بین غروب و صبح: {self.to_persian_digits(one_quarter_time.strftime('%H:%M'))}\n"
            result_text += f"۱ سوم زمان بین غروب و صبح: {self.to_persian_digits(one_third_time.strftime('%H:%M'))}"

            self.result_label.setText(result_text)

            notification_time = two_third_time
            self.schedule_notification(notification_time)
        except Exception as e:
            self.result_label.setText(f"خطا در محاسبه زمان‌ها: {str(e)}")

    def schedule_notification(self, time):
        now = datetime.now()
        delay = (time - now).total_seconds()
        if delay > 0:
            self.timer = QTimer()
            self.timer.singleShot(int(delay * 1000), self.send_notification)

    def send_notification(self):
        notification.notify(
            title='آگاه‌سازی',
            message='زمان دو سوم فاصله بین ظهر و غروب',
            timeout=10
        )

    def to_persian_digits(self, text):
        numbers = {
            '0': '۰', '1': '۱', '2': '۲', '3': '۳', '4': '۴', 
            '5': '۵', '6': '۶', '7': '۷', '8': '۸', '9': '۹'
        }
        return ''.join(numbers.get(ch, ch) for ch in text)

    def from_persian_digits(self, text):
        numbers = {
            '۰': '0', '۱': '1', '۲': '2', '۳': '3', '۴': '4', 
            '۵': '5', '۶': '6', '۷': '7', '۸': '8', '۹': '9'
        }
        return ''.join(numbers.get(ch, ch) for ch in text)

    def apply_styles(self):
        palette = QPalette()
        palette.setColor(QPalette.Window, QColor("#f0f0f0"))
        palette.setColor(QPalette.WindowText, QColor("#333"))
        self.setPalette(palette)

        self.setStyleSheet("""
            QLabel {
                font-size: 16px;
                color: #333;
            }
            QLineEdit {
                font-size: 16px;
                padding: 5px;
                border: 1px solid #ccc;
                border-radius: 5px;
            }
            QComboBox {
                font-size: 16px;
                padding: 5px;
                border: 1px solid #ccc;
                border-radius: 5px;
            }
            QPushButton {
                font-size: 16px;
                padding: 10px;
                background-color: #5cb85c;
                color: #fff;
                border: none;
                border-radius: 5px;
            }
            QPushButton:hover {
                background-color: #4cae4c;
            }
            QPushButton:disabled {
                background-color: #ddd;
                color: #888;
            }
            QProgressBar {
                font-size: 16px;
                padding: 5px;
                border: 1px solid #ccc;
                border-radius: 5px;
                text-align: center;
            }
        """)

def main():
    app = QApplication(sys.argv)
    ex = PrayerTimeApp()
    ex.show()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()