Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,15 +1,59 @@
frappe.ui.form.on('Gym Member Name', {
validate: function (frm) {
if (frm.doc.last_name === null) {
frm.set_value("full_name", frm.doc.first_name)
}
else {
if (frm.doc.last_name === undefined || frm.doc.last_name === null) {
frm.set_value("full_name", frm.doc.first_name);
} else {
frm.set_value("full_name", frm.doc.first_name + " " + frm.doc.last_name);
}
},

after_save:function(frm){
frappe.new_doc('Gym Membership UI')
refresh: function (frm) {
if (!frm.__islocal) {
frm.add_custom_button(__('Assign Class'), function () {
let d = new frappe.ui.Dialog({
title: 'Assign Class',
fields: [
{
label: 'Link to Assign Class',
fieldname: 'assign_class',
fieldtype: 'Link',
options: 'Group Class'
},
],
size: 'small',
primary_action_label: 'Submit',
primary_action(values) {
fetch_data(frm);
d.hide();
}
});

d.show();
});
}
}
});


function fetch_data(frm) {
frappe.call({
method: 'gym_management_system.gym_management_system.doctype.gym_member_name.gym_member_name.fetch_and_set_data',

args: {
self: frm.doc.name
},

callback: function (response) {
if (response.message && response.message.length > 0) {
console.log(response.message[0]);
var data = response.message[0];
var start_time = data.start_time;
var end_time = data.end_time;
var class_type = data.class_type;
frappe.msgprint(`Dear Member ${frm.doc.full_name}, Your class type is ${class_type}. It will start on ${start_time} and end on ${end_time}`);
} else {
console.error("Response message is empty or not in the expected format.");
}
}
});
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,28 +3,43 @@

import frappe
from frappe.model.document import Document

class GymMemberName(Document):
# @frappe.whitelist()
# def set_details(self):
def on_submit(doc,method=None):
gym_trainer=frappe.new_doc("Gym Trainer")
gym_trainer.append("member_details",
{
"member_name":doc.name,
"member_full_name":doc.full_name,
"member_email":doc.email_address,
"member_phone":doc.contact
})



def on_submit(doc, method=None):
gym_trainer = frappe.new_doc("Gym Trainer")
gym_trainer.append("member_details", {
"member_name": doc.name,
"member_full_name": doc.full_name,
"member_email": doc.email_address,
"member_phone": doc.contact
})
gym_trainer.save()
# a=frappe.get_doc("Gym Member Name",doc.name)
# print(gym_trainer.name)
# a.gym_trainer=gym_trainer.name
# print(a,"========")
# a.save()




send_email_confirmation(doc)

def send_email_confirmation(member_doc):
recipients = [member_doc.email_address]

message = """Dear {member_name},We received your details. Now you are Member of Our Gym."""

frappe.sendmail(
recipients=recipients,
subject=frappe._('Confirmation Message'),
message=message.format(member_name=member_doc.full_name),
)
@frappe.whitelist()
def fetch_and_set_data():
source_data = frappe.get_list('Group Class',
fields=[ 'member_trainer',
'class_type',
'start_time',
'end_time'])
return source_data





Expand All @@ -33,10 +48,28 @@ def on_submit(doc,method=None):



'''def on_update(doc, method):
# Fetch data from the gym_member_name record
member_name = doc.name
age = doc.age
email = doc.email
contact = doc.contact

# Update gym_trainer child table records
update_gym_trainer(member_name, age, email, contact)

def update_gym_trainer(member_name, age, email, contact):
# Fetch gym_trainer records related to the gym_member_name
trainers = frappe.get_all('Gym Trainer', filters={'member_name': member_name}, fields=['name'])


for trainer in trainers:
trainer_doc = frappe.get_doc('Gym Trainer', trainer.name)
# Update the child table records
for child in trainer_doc.get('member_details'):
if child.member_name == member_name:
child.age = age
child.email = email
child.contact = contact

# Save the changes to the trainer document
trainer_doc.save()'''
4 changes: 4 additions & 0 deletions gym_management_system/public/css/gym_member_name.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
body{
background-color: aqua;
text-decoration: underline;
}
Empty file.