From b069aaac19cb4cf414ac89946d4ed00b3f7f18ef Mon Sep 17 00:00:00 2001 From: Dita Aji Pratama Date: Tue, 3 Feb 2026 16:22:17 +0700 Subject: [PATCH] Main metaprofile modules --- modules/api/metaprofile/metaprofile.py | 88 +++++++++++++++++++++++--- 1 file changed, 80 insertions(+), 8 deletions(-) diff --git a/modules/api/metaprofile/metaprofile.py b/modules/api/metaprofile/metaprofile.py index 3566ab6..1188832 100644 --- a/modules/api/metaprofile/metaprofile.py +++ b/modules/api/metaprofile/metaprofile.py @@ -11,8 +11,81 @@ class metaprofile: self.db_main = mariadb.connect(**database.db_main) self.cursor = self.db_main.cursor(dictionary=True) - def save(self, params): - APIADDR = "/api/metaprofile/save" + def add(self, params): + APIADDR = "/api/metaprofile/add" + response = {} + loggorilla.prcss(APIADDR, "Define Models") + favicon = params["favicon" ] + copyright = params["copyright" ] + self.cursor.execute("BEGIN;") + try: + loggorilla.prcss(APIADDR, "Activity: Insert") + self.cursor.execute("INSERT INTO `metaprofile` VALUES (DEFAULT, %s, %s) ;", (favicon, copyright) ) + loggorilla.prcss(APIADDR, "Set Response") + response["status" ] = "success" + response["desc" ] = "data updated" + except Exception as e: + self.cursor.execute("ROLLBACK;") + loggorilla.error(APIADDR, str(e) ) + loggorilla.prcss(APIADDR, "Set Response") + response["status" ] = "failed" + response["desc" ] = "Internal Server Error. Please contact us if you still have an error." + finally: + self.cursor.execute("COMMIT;") + self.cursor.close() + self.db_main.close() + return response + + def list(self, params): + APIADDR = "/api/metaprofile/list" + response = {} + self.cursor.execute("BEGIN;") + try: + self.cursor.execute("select `id`, `favicon`, `copyright` from `metaprofile`;") + row = self.cursor.fetchall() + loggorilla.prcss(APIADDR, "Set Response") + response["status" ] = "success" + response["desc" ] = "data collected" + response["data" ] = row + except Exception as e: + self.cursor.execute("ROLLBACK;") + loggorilla.error(APIADDR, str(e) ) + loggorilla.prcss(APIADDR, "Set Response") + response["status" ] = "failed" + response["desc" ] = "Internal Server Error. Please contact us if you still have an error." + finally: + self.cursor.execute("COMMIT;") + self.cursor.close() + self.db_main.close() + return response + + def detail(self, params): + APIADDR = "/api/metaprofile/detail" + response = {} + loggorilla.prcss(APIADDR, "Define Models") + key = params["key" ] + self.cursor.execute("BEGIN;") + try: + self.cursor.execute("select `id`, `favicon`, `copyright` from `metaprofile` where `id` = %s ;", (key,) ) + row = self.cursor.fetchone() + loggorilla.prcss(APIADDR, "Set Response") + response["status" ] = "success" + response["desc" ] = "data collected" + response["data" ] = row + except Exception as e: + self.cursor.execute("ROLLBACK;") + loggorilla.error(APIADDR, str(e) ) + loggorilla.prcss(APIADDR, "Set Response") + response["status" ] = "failed" + response["desc" ] = "Internal Server Error. Please contact us if you still have an error." + finally: + self.cursor.execute("COMMIT;") + self.cursor.close() + self.db_main.close() + return response + + def edit(self, params): + APIADDR = "/api/metaprofile/edit" response = {} loggorilla.prcss(APIADDR, "Define Models") key = params["key" ] @@ -37,19 +110,18 @@ class metaprofile: self.db_main.close() return response - def detail(self, params): - APIADDR = "/api/metaprofile/detail" + def remove(self, params): + APIADDR = "/api/metaprofile/remove" response = {} loggorilla.prcss(APIADDR, "Define Models") key = params["key" ] self.cursor.execute("BEGIN;") try: - self.cursor.execute("select `favicon`, `copyright` from `metaprofile` where `id` = %s ;", (key,) ) - row = self.cursor.fetchone() + loggorilla.prcss(APIADDR, "Activity: Remove") + self.cursor.execute("DELETE FROM `metaprofile` WHERE `id` = %s ;", (key,) ) loggorilla.prcss(APIADDR, "Set Response") response["status" ] = "success" - response["desc" ] = "data collected" - response["data" ] = row + response["desc" ] = "data updated" except Exception as e: self.cursor.execute("ROLLBACK;") loggorilla.error(APIADDR, str(e) )