From a30942daae4dd4cb831799670394c1cbff6a60b2 Mon Sep 17 00:00:00 2001 From: Aarish <118203269+ImprobableGenius@users.noreply.github.com> Date: Fri, 23 May 2025 22:39:21 -0500 Subject: [PATCH] build a model to interact with sites table --- models/SiteModel.js | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 models/SiteModel.js diff --git a/models/SiteModel.js b/models/SiteModel.js new file mode 100644 index 0000000..f17fa67 --- /dev/null +++ b/models/SiteModel.js @@ -0,0 +1,34 @@ +/** + * Model for managing sites table in the database. + */ + +const { supabase } = require('../auth'); + +class SiteModel { + + static tableName = 'sites'; + + /** + * Inserts a new site into the database. + * + * @param {string} name - The name of the site. + * @param {string} domainName - The domain name of the site. + * + * @returns {Promise} - The result of the insert operation. + */ + async insertSite(name, domainName) { + const { error } = await supabase.from(siteModel.tableName).insert({ + name: name, + domain_name: domainName, + }); + + if (error) { + console.error('Error inserting site:', error); + throw error; + } + + return data; + } +} + +module.exports = SiteModel; \ No newline at end of file