This commit is contained in:
CHIEFSOFT\ameye
2025-09-04 09:38:04 -04:00
parent 44e9c893b6
commit 399ccc25ee
4 changed files with 99 additions and 64 deletions
+31 -26
View File
@@ -1,70 +1,75 @@
from symtable import Class
class SettingsItemsData:
@staticmethod
def get_site_settings_data():
data = {
"site_title": { "name": 'Title', "controls": 'TEXT', "active": True },
"site_description": { "name": 'Description', "controls": 'TEXTAREA', "active": True },
"site_logo_text": { "name": 'Logo Text', "controls": 'TEXT', "active": True },
"site_contact_email": { "name": 'Email', "controls": 'TEXT', "active": True },
"site_contact_phone": { "name": 'Phone', "controls": 'TEXT', "active": True },
data = {
"site_title": {"name": 'Title', "controls": 'TEXT', "active": True, "list_order": 0},
"site_description": {"name": 'Description', "controls": 'TEXTAREA', "active": True, "list_order": 1},
"site_logo_text": {"name": 'Logo Text', "controls": 'TEXT', "active": True, "list_order": 2},
"site_contact_email": {"name": 'Email', "controls": 'TEXT', "active": True, "list_order": 3},
"site_contact_phone": {"name": 'Phone', "controls": 'TEXT', "active": True, "list_order": 4},
}
return data
@staticmethod
def get_site_social_settings_data():
data = {
"facebook": { "name": 'Facebook', "controls": 'TEXT', "active": True },
"twitter": { "name": 'Twitter', "controls": 'TEXT', "active": True },
"youtube": { "name": 'Youtube', "controls": 'TEXT', "active": True },
"facebook": {"name": 'Facebook', "controls": 'TEXT', "active": True, "list_order": 0},
"twitter": {"name": 'Twitter', "controls": 'TEXT', "active": True, "list_order": 1},
"youtube": {"name": 'Youtube', "controls": 'TEXT', "active": True, "list_order": 2},
}
return data
@staticmethod
def get_site_home_settings():
data = {
"banner_text": { "name": 'Banner Text', "controls": 'TEXT', "active": True },
"banner_description": { "name": 'Banner Description', "controls": 'TEXTAREA', "active": True },
"banner_text": {"name": 'Banner Text', "controls": 'TEXT', "active": True, "list_order": 0},
"banner_description": {"name": 'Banner Description', "controls": 'TEXTAREA', "active": True,
"list_order": 1},
}
return data
@staticmethod
def get_site_footer_settings():
data = {
"footer_description": { "name": 'Footer Description', "controls": 'TEXTAREA', "active": True },
"boolean_footer_show_email": { "name": 'Show email in footer', "controls": 'SELECT_NO_YES', "active": True },
"boolean_footer_show_made_by": { "name": 'Show made by in footer', "controls": 'SELECT_NO_YES', "active": True },
"boolean_footer_show_socials": { "name": 'Show social in footer', "controls": 'SELECT_NO_YES', "active": True },
"footer_description": {"name": 'Footer Description', "controls": 'TEXTAREA', "active": True,
"list_order": 0},
"boolean_footer_show_email": {"name": 'Show email in footer', "controls": 'SELECT_NO_YES', "active": True,
"list_order": 1},
"boolean_footer_show_made_by": {"name": 'Show made by in footer', "controls": 'SELECT_NO_YES',
"active": True, "list_order": 2},
"boolean_footer_show_socials": {"name": 'Show social in footer', "controls": 'SELECT_NO_YES',
"active": True, "list_order": 3},
}
return data
@staticmethod
def get_site_testimonial_settings():
data = {
"boolean_testimonial_show": {"name": 'Show testimonial section', "controls": 'SELECT_NO_YES', "active": True},
"testimonial_description": { "name": 'Description', "controls": 'TEXT', "active": True },
"boolean_testimonial_show": {"name": 'Show testimonial section', "controls": 'SELECT_NO_YES',
"active": True, "list_order": 0},
"testimonial_description": {"name": 'Description', "controls": 'TEXT', "active": True, "list_order": 1},
}
return data
@staticmethod
def get_site_about_items():
data = {
"about_title": { "name": 'About Title', "controls": 'TEXT', "active": True },
"about_description": { "name": 'About Details', "controls": 'TEXTAREA', "active": True },
"about_extra_1": { "name": 'Extra About us', "controls": 'TEXTAREA', "active": True },
"about_extra_2": { "name": 'More About us', "controls": 'TEXTAREA', "active": True },
"about_title": {"name": 'About Title', "controls": 'TEXT', "active": True, "list_order": 0},
"about_description": {"name": 'About Details', "controls": 'TEXTAREA', "active": True, "list_order": 1},
"about_extra_1": {"name": 'Extra About us', "controls": 'TEXTAREA', "active": True, "list_order": 2},
"about_extra_2": {"name": 'More About us', "controls": 'TEXTAREA', "active": True, "list_order": 3},
}
return data
@staticmethod
def get_site_contact_items():
data = {
"contact_title" : { "name": 'Contact Title', "controls": 'TEXT', "active": True },
"contact_introduction": { "name": 'Extra Introduction', "controls": 'TEXTAREA', "active": True },
"contact_title": {"name": 'Contact Title', "controls": 'TEXT', "active": True, "list_order": 0},
"contact_introduction": {"name": 'Extra Introduction', "controls": 'TEXTAREA', "active": True,
"list_order": 1},
}
return data
+64 -36
View File
@@ -39,7 +39,7 @@ class MyProductsService(BaseService):
template_uid = validated_data.get('template_uid')
member_data = Members.get_member_by_uid(uid)
member_id = member_data.id
response_data ={}
response_data = {}
product_id = validated_data.get('product_id')
MembersProducts.set_member_product_template(member_id, product_id, template_uid)
@@ -69,7 +69,6 @@ class MyProductsService(BaseService):
db.session.rollback()
return ResponseHelper.internal_server_error()
@staticmethod
def mpproduct_template_data(data):
try:
@@ -83,7 +82,7 @@ class MyProductsService(BaseService):
product_id = validated_data.get('product_id')
template_data = []
memberSubscription = MembersProducts.get_member_product_by_product_member_id(member_id, product_id)
memberSubscription = MembersProducts.get_member_product_by_product_member_id(member_id, product_id)
if memberSubscription:
templates = ProductsTemplates.get_template_by_product_id(product_id)
for t in templates:
@@ -98,7 +97,7 @@ class MyProductsService(BaseService):
response_data = {
"product_id": product_id,
"current_template_uid": memberSubscription.product_template if memberSubscription else None ,
"current_template_uid": memberSubscription.product_template if memberSubscription else None,
"templates": template_data,
"last_update": datetime.datetime.utcnow(),
}
@@ -135,12 +134,13 @@ class MyProductsService(BaseService):
product_id = validated_data.get('product_id')
product_data = Products.get_product_by_product_id(product_id)
# logger.error(f"Product with ID {product_id} does not exist.")
if not product_data:
return {
"message": "Please provide product_id",
"message": "Please provide valid product_id",
"error_message": "Error - Please select a valid product to view",
"data": None,
"error": "Bad request"
"error": f"Product with ID {product_id} does not exist."
}, 400
logger.info(f"GET HERE ******************************** : {data}", exc_info=True)
@@ -197,11 +197,13 @@ class MyProductsService(BaseService):
product_data = Products.get_product_by_product_id(product_id)
if not product_data:
return {
"message": "Please provide product_id",
"data": None,
"error": "Bad request"
}, 400
if not product_data:
return {
"message": "Please provide valid product_id",
"error_message": "Error - Please select a valid product to view",
"data": None,
"error": f"Product with ID {product_id} does not exist."
}, 4000
logger.info(f"GET HERE ******************************** : {data}", exc_info=True)
mumberSub = MembersProducts.get_member_product_by_product_member_id(member_id, product_id)
@@ -330,6 +332,14 @@ class MyProductsService(BaseService):
product_subscription_external_url = ''
product_subscription_internal_url = ''
product_data = Products.get_product_by_product_id(product_id)
if not product_data:
return {
"message": "Please provide valid product_id",
"error_message": "Error - Please select a valid product to view",
"data": None,
"error": f"Product with ID {product_id} does not exist."
}, 400
product_description = ProductsDetails.get_product_details_with_product_id(product_id)
productDataStatus = product_data.status
@@ -401,6 +411,14 @@ class MyProductsService(BaseService):
product_subscription_uid = ''
product_data = Products.get_product_by_product_id(product_id)
if not product_data:
return {
"message": "Please provide valid product_id",
"error_message": "Error - Please select a valid product to view",
"data": None,
"error": f"Product with ID {product_id} does not exist."
}, 400
product_description = ProductsDetails.get_product_details_with_product_id(product_id)
productDataStatus = product_data.status
@@ -456,6 +474,14 @@ class MyProductsService(BaseService):
product_subscription_uid = ''
product_data = Products.get_product_by_product_id(product_id)
if not product_data:
return {
"message": "Please provide valid product_id",
"error_message": "Error - Please select a valid product to view",
"data": None,
"error": f"Product with ID {product_id} does not exist."
}, 400
product_description = ProductsDetails.get_product_details_with_product_id(product_id)
productDataStatus = product_data.status
@@ -473,18 +499,19 @@ class MyProductsService(BaseService):
aboutFields = SettingsItemsData.get_site_about_items()
testimonialFields = SettingsItemsData.get_site_testimonial_settings()
settings_items ={}
settings_items = {}
if product_id == "A000001":
settings_items = {
"settings": {"title": 'Settings', "controls": 'settings', "active": 'active show',
"custom": False, "data": settingsFields, "list_order": 0 },
"custom": False, "data": settingsFields, "list_order": 0},
"home_tab": {"title": 'Home Page', "controls": 'home', "active": '', "custom": False,
"data": homeFields, "list_order": 1},
"footer_tab": {"title": 'Footer', "controls": 'footer', "active": '', "custom": False,
"data": footerFields, "list_order": 2},
"about_tab": {"title": 'About Page', "controls": 'about', "active": '', "custom": False,
"data": aboutFields, "list_order": 3},
"contact_tab": {"title": 'Contact Page', "controls": 'contact', "active": '', "custom": False,
"contact_tab": {"title": 'Contact Page', "controls": 'contact', "active": '',
"custom": False,
"data": contactFields, "list_order": 4},
"social_tab": {"title": 'Socials', "controls": 'social', "active": '', "custom": False,
"data": socialFields, "list_order": 5},
@@ -495,27 +522,28 @@ class MyProductsService(BaseService):
}
if product_id == "A000002":
settings_items = {
"settings": {"title": 'Settings', "controls": 'settings', "active": 'active show',
"custom": False, "data": settingsFields, "list_order": 0},
"home_tab": {"title": 'Home Page', "controls": 'home', "active": '', "custom": False,
"data": homeFields, "list_order": 1},
"footer_tab": {"title": 'Footer', "controls": 'footer', "active": '', "custom": False,
"data": footerFields, "list_order": 2},
"about_tab": {"title": 'About Page', "controls": 'about', "active": '', "custom": False,
"data": aboutFields, "list_order": 3},
"contact_tab": {"title": 'Contact Page', "controls": 'contact', "active": '',
"custom": False,
"data": contactFields, "list_order": 4},
"testimonial_tab": {"title": 'Testimonials', "controls": 'testimonial', "active": '', "custom": False,
"data": testimonialFields, "list_order": 5},
"social_tab": {"title": 'Socials', "controls": 'social', "active": '', "custom": False,
"data": socialFields, "list_order": 6},
"template_tab": {"title": 'Template', "controls": 'template', "active": '', "custom": True,
"data": templateData, "list_order": 7},
"color_scheme_tab": {"title": 'Color Scheme', "controls": 'color-scheme', "active": '',
"custom": True, "data": {}, "list_order": 8}
}
settings_items = {
"settings": {"title": 'Settings', "controls": 'settings', "active": 'active show',
"custom": False, "data": settingsFields, "list_order": 0},
"home_tab": {"title": 'Home Page', "controls": 'home', "active": '', "custom": False,
"data": homeFields, "list_order": 1},
"footer_tab": {"title": 'Footer', "controls": 'footer', "active": '', "custom": False,
"data": footerFields, "list_order": 2},
"about_tab": {"title": 'About Page', "controls": 'about', "active": '', "custom": False,
"data": aboutFields, "list_order": 3},
"contact_tab": {"title": 'Contact Page', "controls": 'contact', "active": '',
"custom": False,
"data": contactFields, "list_order": 4},
"testimonial_tab": {"title": 'Testimonials', "controls": 'testimonial', "active": '',
"custom": False,
"data": testimonialFields, "list_order": 5},
"social_tab": {"title": 'Socials', "controls": 'social', "active": '', "custom": False,
"data": socialFields, "list_order": 6},
"template_tab": {"title": 'Template', "controls": 'template', "active": '', "custom": True,
"data": templateData, "list_order": 7},
"color_scheme_tab": {"title": 'Color Scheme', "controls": 'color-scheme', "active": '',
"custom": True, "data": {}, "list_order": 8}
}
#
# Simulate processing
+3 -1
View File
@@ -98,7 +98,9 @@ class Products(db.Model):
"""
productItem = cls.query.filter_by(product_id = product_id).first()
if not productItem:
raise ValueError(f"pProduct with ID {product_id} does not exist.")
# raise ValueError(f"pProduct with ID {product_id} does not exist.")
logger.error(f"Product with ID {product_id} does not exist.")
return None
return productItem
def to_dict(self):
+1 -1
View File
@@ -37,7 +37,7 @@ class ProductsDetails(db.Model):
"""
productItem = cls.query.filter_by(product_id = product_id).first()
if not productItem:
raise ValueError(f"pProduct with ID {product_id} does not exist.")
raise ValueError(f"Product with ID {product_id} does not exist.")
return productItem