Skip to content
Merged
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
9 changes: 9 additions & 0 deletions buzz/events/doctype/buzz_event/buzz_event.js
Original file line number Diff line number Diff line change
Expand Up @@ -289,6 +289,15 @@ function show_save_as_template_dialog(frm) {
dialog.show();
}

frappe.ui.form.on("Buzz Event Form", {
copy_to_clipboard(frm, cdt, cdn) {
const row = frappe.get_doc(cdt, cdn);
const url = `${window.location.origin}/dashboard/events/${frm.doc.route}/forms/${row.route}`;
navigator.clipboard.writeText(url);
frappe.show_alert({ message: __("Link copied!"), indicator: "green" });
},
});

frappe.ui.form.on("Buzz Event", {
refresh(frm) {
frm.fields_dict.time_zone.set_data(getZoomSupportedTimezones());
Expand Down
10 changes: 8 additions & 2 deletions buzz/events/doctype/buzz_event_form/buzz_event_form.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
{
"actions": [],
"allow_rename": 1,
"creation": "2026-03-20 00:00:00.000000",
"creation": "2026-03-20 00:00:00",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"form_doctype",
"route",
"copy_to_clipboard",
"publish",
"column_break_main",
"auto_close_at",
Expand Down Expand Up @@ -79,13 +80,18 @@
"fieldname": "closed_message",
"fieldtype": "Small Text",
"label": "Closed Message"
},
{
"fieldname": "copy_to_clipboard",
"fieldtype": "Button",
"label": "Copy link to clipboard"
}
],
"grid_page_length": 50,
"index_web_pages_for_search": 1,
"istable": 1,
"links": [],
"modified": "2026-03-20 00:00:00.000000",
"modified": "2026-04-13 23:16:46.870787",
"modified_by": "Administrator",
"module": "Events",
"name": "Buzz Event Form",
Expand Down
21 changes: 21 additions & 0 deletions buzz/events/doctype/buzz_event_form/buzz_event_form.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,27 @@


class BuzzEventForm(Document):
# begin: auto-generated types
# This code is auto-generated. Do not modify anything in this block.

from typing import TYPE_CHECKING

if TYPE_CHECKING:
from frappe.types import DF

auto_close_at: DF.Datetime | None
closed_message: DF.SmallText | None
closed_title: DF.Data | None
form_doctype: DF.Link
parent: DF.Data
parentfield: DF.Data
parenttype: DF.Data
publish: DF.Check
route: DF.Data
success_message: DF.MarkdownEditor | None
success_title: DF.Data | None
# end: auto-generated types

def validate(self):
self.validate_unique_route()

Expand Down
29 changes: 15 additions & 14 deletions dashboard/src/components/AttendeeFormControl.vue
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,22 @@
class="bg-surface-white border border-outline-gray-3 rounded-xl p-4 md:p-6 mb-6 shadow-sm relative"
>
<!-- Remove Button -->
<Tooltip :text="__('Remove Attendee')" :hover-delay="0.5">
<Button
v-if="showRemove"
@click="$emit('remove')"
type="button"
theme="red"
class="absolute top-4 right-4"
:title="__('Remove attendee')"
icon="x"
/>
</Tooltip>

<h4 class="text-lg font-semibold text-ink-gray-9 mb-4 border-b pb-2 pr-10">
{{ __("Attendee") }} #{{ index + 1 }}
</h4>
<div class="flex justify-between items-start mb-4 border-b pb-2">
<h4 class="text-lg font-semibold text-ink-gray-9">
{{ __("Attendee") }} #{{ index + 1 }}
</h4>

<Tooltip :text="__('Remove Attendee')" :hover-delay="0.5">
<Button
v-if="showRemove"
@click="$emit('remove')"
type="button"
theme="red"
icon="x"
/>
</Tooltip>
</div>

<!-- Name, Email and Custom Fields -->
<div class="grid grid-cols-1 md:grid-cols-2 gap-4 mb-4 items-end">
Expand Down
Loading