From 771fb81a325f2e6fc4111e7f32f12fbc4ffa5bd2 Mon Sep 17 00:00:00 2001
From: Eunice Sarah Siregar <13521013@mahasiswa.itb.ac.id>
Date: Mon, 3 Apr 2023 23:59:10 +0700
Subject: [PATCH] add register

---
 img/register-page.png | Bin 0 -> 25787 bytes
 src/register.py       | 185 ++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 185 insertions(+)
 create mode 100644 img/register-page.png

diff --git a/img/register-page.png b/img/register-page.png
new file mode 100644
index 0000000000000000000000000000000000000000..45cf697fb628bd5df5477c6df157f8ccdd617871
GIT binary patch
literal 25787
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
Bfx-X)

literal 0
HcmV?d00001

diff --git a/src/register.py b/src/register.py
index e69de29..d6ebef7 100644
--- a/src/register.py
+++ b/src/register.py
@@ -0,0 +1,185 @@
+import sqlite3
+from PyQt6.QtWidgets import QApplication, QLabel, QWidget, QLineEdit, QPushButton, QRadioButton, QCheckBox, QMessageBox
+from PyQt6.QtGui import QFont, QPixmap, QCursor
+from PyQt6.QtCore import Qt
+import sys
+class register(QWidget):
+
+    def __init__(self):
+        super().__init__()
+        self.setUpWindow()
+        
+
+        # self.setUpRegisterWindow()
+        # self.conn = sqlite3.connect("fitu.db")
+    def setUpWindow(self):
+        self.setWindowTitle("FitU - Register")
+        self.setFixedSize(1280, 720)
+        self.setUp()
+
+    def setUp(self):
+        #Background
+        background = QLabel(self)
+        bacgroundImage = QPixmap("img/register-page.png")
+        background.setPixmap(bacgroundImage)
+        background.move(0, 0)
+
+
+        inputSize = QFont()
+        inputSize.setFamily("Segoe UI")
+        inputSize.setPointSize(10)
+
+        genderSize = QFont()
+        genderSize.setFamily("Segoe UI")
+        genderSize.setPointSize(14)
+
+        registerText = QFont()
+        registerText.setFamily("Segoe UI")
+        registerText.setPointSize(16)
+
+        self.nameInput = QLineEdit(self)
+        self.nameInput.setPlaceholderText("Input Your Name")
+        self.nameInput.setFixedSize(379, 44)
+        self.nameInput.setFont(inputSize)
+        self.nameInput.setStyleSheet('''
+        padding: 11px 30px 11px 30px;
+        border: 1px solid rgba(255, 255, 255, 0.8);
+        border-radius: 20px;
+        color: rgba(23, 71, 40, 1);
+        background-color: #D2DCC4
+        ''')
+        self.nameInput.move(773, 196)
+
+        self.age = QLineEdit(self)
+        self.age.setPlaceholderText("Input Your Age")
+        self.age.setFixedSize(172, 44)
+        self.age.setFont(inputSize)
+        self.age.setStyleSheet('''
+        padding: 11px 30px 11px 30px;
+        border: 1px solid rgba(255, 255, 255, 0.8);
+        border-radius: 20px;
+        color: rgba(23, 71, 40, 1);
+        background-color: #D2DCC4
+        ''')
+        self.age.move(976, 285)
+
+        self.height = QLineEdit(self)
+        self.height.setPlaceholderText("Input Your Height")
+        self.height.setFixedSize(172, 44)
+        self.height.setFont(inputSize)
+        self.height.setStyleSheet('''
+        padding: 11px 30px 11px 30px;
+        border: 1px solid rgba(255, 255, 255, 0.8);
+        border-radius: 20px;
+        color: rgba(23, 71, 40, 1);
+        background-color: #D2DCC4
+        ''')
+        self.height.move(769, 392)
+
+        self.weight = QLineEdit(self)  
+        self.weight.setPlaceholderText("Input Your Weight")
+        self.weight.setFixedSize(172, 44)
+        self.weight.setFont(inputSize)
+        self.weight.setStyleSheet('''
+        padding: 11px 30px 11px 30px;
+        border: 1px solid rgba(255, 255, 255, 0.8);
+        border-radius: 20px;
+        color: rgba(23, 71, 40, 1);
+        background-color: #D2DCC4
+        ''')
+        self.weight.move(976, 392)
+
+        self.male = QRadioButton(self)
+        self.male.move(780, 285)
+        self.male.setStyleSheet(f'background-color: #174728 ; color: #D2DCC4 ')
+        self.male.setText("Male")
+        self.male.setFont(genderSize)
+        self.male.setCursor(QCursor(Qt.CursorShape.PointingHandCursor))
+
+        self.female = QRadioButton(self)
+        self.female.move(780, 315)
+        self.female.setStyleSheet('background-color: #174728 ; color: #D2DCC4 ')
+        self.female.setText("Female")
+        self.female.setFont(genderSize)
+        self.female.setCursor(QCursor(Qt.CursorShape.PointingHandCursor))
+
+        self.registerButton = QPushButton(self)
+        self.registerButton.setText("Register")
+        self.registerButton.setFixedSize(172, 44)
+        self.registerButton.setStyleSheet('''
+        border: 1px solid rgba(255, 255, 255, 0.8);
+        border-radius: 20px;
+        color: rgba(23, 71, 40, 1);
+        background-color: #D2DCC4
+        ''')
+        self.registerButton.move(873, 545)
+        self.registerButton.setFont(registerText)
+        self.registerButton.setCursor(QCursor(Qt.CursorShape.PointingHandCursor))
+
+        self.fit = QCheckBox(self)
+        self.fit.move(781, 486)
+        self.fit.setText("Fit our body")
+        self.fit.setFont(genderSize)
+        self.fit.setStyleSheet('background-color: #174728 ; color: #D2DCC4 ')
+        self.fit.setCursor(QCursor(Qt.CursorShape.PointingHandCursor))
+
+        self.thin = QCheckBox(self)
+        self.thin.move(781, 516)
+        self.thin.setText("Thin")
+        self.thin.setFont(genderSize)
+        self.thin.setStyleSheet('background-color: #174728 ; color: #D2DCC4 ')
+        self.thin.setCursor(QCursor(Qt.CursorShape.PointingHandCursor))
+
+    def register(self):
+        if (self.nameInput == '' or self.age == '' or self.height == '' or self.weight == '' or (not self.male and not self.female) or self.fit or self.thin):
+            msgBox = QMessageBox()
+            msgBox.setText("<p>Please fill out the form properly!</p>")
+            msgBox.setWindowTitle("Registration Failed")
+            msgBox.setIcon(QMessageBox.Icon.Warning)
+            msgBox.setStyleSheet("background-color: white")
+            msgBox.setStandardButtons(QMessageBox.StandardButton.Ok)
+            msgBox.exec()
+        c = self.conn.cursor()
+        if (self.female):
+            if (self.thin):
+                c.execute(
+                    f"INSERT INTO user (name, height, weight, goal, gender, age) VALUES ('{self.nameInput.text()}', '{self.height.text()}', '{self.weight.text()}', 'thin', 'female', '{self.age.text()}')"
+                )
+                self.conn.commit()
+            elif (self.fit):
+                c.execute(
+                    f"INSERT INTO user (name, height, weight, goal, gender, age) VALUES ('{self.nameInput.text()}', '{self.height.text()}', '{self.weight.text()}', 'fit', 'female', '{self.age.text()}')"
+                )
+                self.conn.commit()
+
+            else:
+                c.execute(
+                    f"INSERT INTO user (name, height, weight, goal, gender, age) VALUES ('{self.nameInput.text()}', '{self.height.text()}', '{self.weight.text()}', 'fit, thin', 'female', '{self.age.text()}')"
+                )
+                self.conn.commit()
+
+        if (self.male):
+            if (self.thin):
+                c.execute(
+                    f"INSERT INTO user (name, height, weight, goal, gender, age) VALUES ('{self.nameInput.text()}', '{self.height.text()}', '{self.weight.text()}', 'thin', 'male', '{self.age.text()}')"
+                )
+                self.conn.commit()
+
+            elif (self.fit):
+                c.execute(
+                    f"INSERT INTO user (name, height, weight, goal, gender, age) VALUES ('{self.nameInput.text()}', '{self.height.text()}', '{self.weight.text()}', 'fit', 'male', '{self.age.text()}')"
+                )
+                self.conn.commit()
+
+            else:
+                c.execute(
+                    f"INSERT INTO user (name, height, weight, goal, gender, age) VALUES ('{self.nameInput.text()}', '{self.height.text()}', '{self.weight.text()}', 'fit, thin', 'male', '{self.age.text()}')"
+                )
+                self.conn.commit()
+                    
+if __name__ == "__main__":
+    
+    app = QApplication(sys.argv)
+    window = register()
+    window.show()
+    app.exec()
\ No newline at end of file
-- 
GitLab