feat: New theme and Conf 2019 pages (#422)

feat: New theme and Conf 2019 pages
This commit is contained in:
Faris Ansari
2019-08-04 20:51:57 +05:30
committed by GitHub
52 changed files with 1316 additions and 754 deletions

View File

@@ -1,515 +1,142 @@
{
"allow_copy": 0,
"allow_guest_to_view": 0,
"allow_import": 0,
"allow_rename": 0,
"autoname": "E-CON-.YYYY.-.###",
"beta": 0,
"creation": "2017-07-06 16:20:28.662095",
"custom": 0,
"docstatus": 0,
"doctype": "DocType",
"document_type": "",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"participant_details_section",
"participant_name",
"participant_designation",
"column_break_3",
"email",
"conference_details_section",
"conference",
"full_conference_tickets",
"user_conference_tickets",
"paid",
"column_break_10",
"tshirt_table",
"tshirt_size",
"currency",
"amount",
"thank_you_email_sent"
],
"fields": [
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "participant_details_section",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Participant Details",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "Participant Details"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "participant_name",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Participant Name",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_3",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"fieldtype": "Column Break"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "",
"fieldname": "email",
"fieldtype": "Data",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Email",
"length": 0,
"no_copy": 0,
"options": "User",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"options": "Email"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "conference_details_section",
"fieldtype": "Section Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Conference Details",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "Conference Details"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "",
"fieldname": "conference",
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Conference",
"length": 0,
"no_copy": 0,
"options": "\n2017\n2018",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"options": "\n2017\n2018\n2019"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "full_conference_tickets",
"fieldtype": "Int",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Full Conference Tickets",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "Full Conference Tickets"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "user_conference_tickets",
"fieldtype": "Int",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "User Conference Tickets",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "User Conference Tickets"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "paid",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Paid",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "Paid"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "column_break_10",
"fieldtype": "Column Break",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"fieldtype": "Column Break"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "tshirt_size",
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "T-Shirt Size",
"length": 0,
"no_copy": 0,
"options": "S\nM\nL\nXL\nXXL\nXXXL",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"options": "S\nM\nL\nXL\nXXL\nXXXL"
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "currency",
"fieldtype": "Select",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Currency",
"length": 0,
"no_copy": 0,
"options": "USD\nINR",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"fieldname": "amount",
"fieldtype": "Currency",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 1,
"in_standard_filter": 0,
"label": "Amount",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 1,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"reqd": 1
},
{
"allow_bulk_edit": 0,
"allow_in_quick_entry": 0,
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"default": "0",
"fieldname": "thank_you_email_sent",
"fieldtype": "Check",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_global_search": 0,
"in_list_view": 0,
"in_standard_filter": 0,
"label": "Thank You Email Sent",
"length": 0,
"no_copy": 0,
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"remember_last_selected_value": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"translatable": 0,
"unique": 0
"label": "Thank You Email Sent"
},
{
"fieldname": "tshirt_table",
"fieldtype": "Table",
"label": "T-Shirt Sizes",
"options": "TShirt Sizes"
},
{
"fieldname": "participant_designation",
"fieldtype": "Select",
"label": "Participant Designation",
"options": "\nCxO\nAnalyst\nConsultant\nDeveloper\nSystem Administrator\nOther"
}
],
"has_web_view": 0,
"hide_heading": 0,
"hide_toolbar": 0,
"idx": 0,
"image_view": 0,
"in_create": 0,
"is_submittable": 0,
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2018-10-02 12:44:37.868959",
"modified": "2019-08-02 19:07:44.339770",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "Conference Participant",
"name_case": "",
"owner": "Administrator",
"permissions": [
{
"amend": 0,
"cancel": 0,
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"if_owner": 0,
"import": 0,
"permlevel": 0,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"set_user_permissions": 0,
"share": 1,
"submit": 0,
"write": 1
}
],
"quick_entry": 1,
"read_only": 0,
"read_only_onload": 0,
"show_name_in_global_search": 0,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1,
"track_seen": 0,
"track_views": 0
"track_changes": 1
}

View File

@@ -8,12 +8,10 @@ from frappe.model.document import Document
class ConferenceParticipant(Document):
def validate(self):
self.conference = '2018'
if self.owner not in ["Guest", "Administrator"] and not self.get("email"):
self.email = frappe.db.get_value('User', self.owner, "email")
self.conference = '2019'
def validate_payment(self):
self.amount = self.full_conference_tickets * (4000 if self.currency == 'INR' else 60)
self.amount = self.full_conference_tickets * (5000 if self.currency == 'INR' else 70)
def on_payment_authorized(self, status_changed_to=None):
self.paid = 1

View File

@@ -0,0 +1,8 @@
// Copyright (c) 2019, EOSSF and contributors
// For license information, please see license.txt
frappe.ui.form.on('Conference Request', {
// refresh: function(frm) {
// }
});

View File

@@ -0,0 +1,70 @@
{
"creation": "2019-08-02 20:23:43.195486",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"contact_name",
"contact_number",
"email",
"organization_name",
"request_type",
"message"
],
"fields": [
{
"fieldname": "contact_name",
"fieldtype": "Data",
"label": "Contact Name"
},
{
"fieldname": "email",
"fieldtype": "Data",
"label": "Email",
"options": "Email"
},
{
"fieldname": "contact_number",
"fieldtype": "Data",
"label": "Contact Number"
},
{
"fieldname": "organization_name",
"fieldtype": "Data",
"label": "Organization Name"
},
{
"fieldname": "request_type",
"fieldtype": "Select",
"label": "Request Type",
"options": "Sponsorship\nExhibit Program"
},
{
"fieldname": "message",
"fieldtype": "Text Editor",
"label": "Message"
}
],
"modified": "2019-08-02 20:26:28.760374",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "Conference Request",
"owner": "Administrator",
"permissions": [
{
"create": 1,
"delete": 1,
"email": 1,
"export": 1,
"print": 1,
"read": 1,
"report": 1,
"role": "System Manager",
"share": 1,
"write": 1
}
],
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2019, EOSSF and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
# import frappe
from frappe.model.document import Document
class ConferenceRequest(Document):
pass

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2019, EOSSF and Contributors
# See license.txt
from __future__ import unicode_literals
# import frappe
import unittest
class TestConferenceRequest(unittest.TestCase):
pass

View File

@@ -0,0 +1,38 @@
{
"creation": "2019-08-02 10:28:32.354345",
"doctype": "DocType",
"editable_grid": 1,
"engine": "InnoDB",
"field_order": [
"size",
"quantity"
],
"fields": [
{
"fieldname": "size",
"fieldtype": "Select",
"in_list_view": 1,
"label": "Size",
"options": "S\nM\nL\nXL\nXXL\nXXXL",
"reqd": 1
},
{
"fieldname": "quantity",
"fieldtype": "Int",
"in_list_view": 1,
"label": "Quantity",
"reqd": 1
}
],
"istable": 1,
"modified": "2019-08-02 10:29:40.258477",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "TShirt Sizes",
"owner": "Administrator",
"permissions": [],
"quick_entry": 1,
"sort_field": "modified",
"sort_order": "DESC",
"track_changes": 1
}

View File

@@ -0,0 +1,10 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2019, EOSSF and contributors
# For license information, please see license.txt
from __future__ import unicode_literals
# import frappe
from frappe.model.document import Document
class TShirtSizes(Document):
pass

View File

@@ -1,29 +0,0 @@
{
"attach_print": 0,
"condition": "doc.paid and doc.amount and not doc.thank_you_email_sent",
"creation": "2017-07-07 11:29:54.935820",
"days_in_advance": 0,
"docstatus": 0,
"doctype": "Notification",
"channnel": "Email",
"document_type": "Conference Participant",
"enabled": 1,
"event": "Save",
"idx": 0,
"is_standard": 1,
"message": "Dear {{ doc.conference_participant }},<br><br>\n\n<p>Thank you for registering for the 2017 Conference!</p>\n\n<p>Here are your ticket details:</p>\n\n<p>\nFull Conference Tickets: {{ doc.full_conference_tickets or 0 }}\n<br>\nUser Conference Tickets: {{ doc.user_conference_tickets or 0 }}\n</p>\n\n<p>Total Amount Paid: {{ doc.get_formatted('amount') }}</p>\n\n<p>If you need any help, please email us at foundation@erpnext.com</p>",
"modified": "2017-07-07 16:06:47.764297",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "Conference Registration",
"owner": "Administrator",
"property_value": "1",
"recipients": [
{
"cc": "team@erpnext.com",
"email_by_document_field": "owner"
}
],
"set_property_after_alert": "thank_you_email_sent",
"subject": "Thank you for Registering for the Conference"
}

View File

@@ -0,0 +1,30 @@
{
"attach_print": 1,
"channel": "Email",
"condition": "doc.paid and doc.amount and not doc.thank_you_email_sent",
"creation": "2019-08-02 21:12:16.938267",
"days_in_advance": 0,
"docstatus": 0,
"doctype": "Notification",
"document_type": "Conference Participant",
"enabled": 1,
"event": "Save",
"idx": 0,
"is_standard": 1,
"message": "<p>Dear {{ doc.participant_name }},</p>\n\n<p>Thank you for registering for the 2019 ERPNext Conference!</p>\n\n<p>Here are your ticket details:</p>\n\n<h4>Ticket Number {{ doc.name}}</h4>\n\n<table class=\"table table-bordered\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" style=\"padding: 30px 0px\">\n\t<tr>\n\t\t<th style='width: 50%'>Ticket Type</th>\n\t\t<th style='width: 25%'>Qty</th>\n\t\t<th style='width: 25%'>Rate</th>\n\t</tr>\n\t<tr>\n\t\t<td>Conference Tickets + Lunch + Dinner</td>\n\t\t<td>{{ doc.full_conference_tickets or 0 }}</td>\n\t\t<td>{% if doc.currency==\"INR\" %}5000{% else %}70{% endif %}</td>\n\t</tr>\n</table>\n\n<h5>Total Amount: {{ doc.currency }} {{ doc.get_formatted('amount') }}</h5>\n\n\n<p>If you need any help, please email us at foundation@erpnext.com</p>",
"modified": "2019-08-02 21:12:20.926229",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "Conference Ticket Confirmation",
"owner": "Administrator",
"print_format": "Conference Ticket",
"property_value": "1",
"recipients": [
{
"cc": "team@erpnext.com",
"email_by_document_field": "owner"
}
],
"set_property_after_alert": "thank_you_email_sent",
"subject": "Thank you for Registering for the Conference"
}

View File

@@ -1,6 +1,6 @@
<p>Dear {{ doc.participant_name }},</p>
<p>Thank you for registering for the 2018 ERPNext Conference!</p>
<p>Thank you for registering for the 2019 ERPNext Conference!</p>
<p>Here are your ticket details:</p>
@@ -15,7 +15,7 @@
<tr>
<td>Conference Tickets + Lunch + Dinner</td>
<td>{{ doc.full_conference_tickets or 0 }}</td>
<td>{% if doc.currency=="INR" %}4000{% else %}60{% endif %}</td>
<td>{% if doc.currency=="INR" %}5000{% else %}70{% endif %}</td>
</tr>
</table>

View File

@@ -0,0 +1,24 @@
{
"align_labels_right": 1,
"creation": "2019-08-02 18:45:55.172830",
"custom_format": 0,
"default_print_language": "en",
"disabled": 0,
"doc_type": "Conference Participant",
"docstatus": 0,
"doctype": "Print Format",
"font": "Default",
"format_data": "[{\"fieldname\": \"print_heading_template\", \"fieldtype\": \"Custom HTML\", \"options\": \"<div class=\\\"print-heading\\\">\\t\\t\\t\\t<h2>ERPNext Conference {{ doc.conference }}<br><small>{{ doc.name }}</small>\\t\\t\\t\\t</h2></div>\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Participant Details\"}, {\"fieldtype\": \"Column Break\"}, {\"print_hide\": 0, \"fieldname\": \"participant_name\", \"align\": \"left\", \"label\": \"Name\"}, {\"print_hide\": 0, \"fieldname\": \"email\", \"label\": \"Email\"}, {\"fieldtype\": \"Column Break\"}, {\"print_hide\": 0, \"fieldname\": \"paid\", \"align\": \"left\", \"label\": \"Paid\"}, {\"fieldtype\": \"Section Break\", \"label\": \"Conference Details\"}, {\"fieldtype\": \"Column Break\"}, {\"print_hide\": 0, \"fieldname\": \"full_conference_tickets\", \"align\": \"left\", \"label\": \"Number of Tickets\"}, {\"print_hide\": 0, \"fieldname\": \"conference\", \"label\": \"Conference\"}, {\"fieldtype\": \"Column Break\"}, {\"print_hide\": 0, \"fieldname\": \"tshirt_size\", \"label\": \"T-Shirt Size\"}, {\"print_hide\": 0, \"fieldname\": \"currency\", \"label\": \"Currency\"}, {\"print_hide\": 0, \"fieldname\": \"amount\", \"align\": \"left\", \"label\": \"Amount\"}, {\"fieldtype\": \"Section Break\", \"label\": \"\"}, {\"fieldtype\": \"Column Break\"}, {\"visible_columns\": [{\"print_hide\": 0, \"fieldname\": \"size\", \"print_width\": \"\"}, {\"print_hide\": 0, \"fieldname\": \"quantity\", \"print_width\": \"\"}], \"print_hide\": 0, \"fieldname\": \"tshirt_table\", \"label\": \"T-Shirt Sizes\"}]",
"idx": 0,
"line_breaks": 1,
"modified": "2019-08-02 18:57:14.603108",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "Conference Ticket",
"owner": "Administrator",
"print_format_builder": 0,
"print_format_type": "Jinja",
"raw_printing": 0,
"show_section_headings": 1,
"standard": "Yes"
}

View File

@@ -1,17 +1,41 @@
frappe.ready(function() {
// bind events here
frappe._calculate = function() {
frappe.web_form.field_group.set_value('amount',
parseInt(frappe.web_form.field_group.get_value('full_conference_tickets') || 0) * 4000
frappe.web_form.set_value('amount',
parseInt(frappe.web_form.get_value('full_conference_tickets') || 0) * 5000
)
};
setTimeout(() => {
$('.btn-form-submit').hide();
frappe.web_form.events.on('after_load', () => {
frappe.web_form.set_df_property('tshirt_table', 'hidden', 1);
$('input[data-fieldname="full_conference_tickets"]').on('keyup', function() {
frappe._calculate();
let value = frappe.web_form.get_value('full_conference_tickets')
console.log(value)
if (value > 1) {
frappe.web_form.set_df_property('tshirt_table', 'hidden', 0);
frappe.web_form.set_df_property('tshirt_size', 'hidden', 1);
} else {
frappe.web_form.set_df_property('tshirt_table', 'hidden', 1);
frappe.web_form.set_df_property('tshirt_size', 'hidden', 0);
}
});
frappe._calculate();
}, 1000);
$('.btn-form-submit').hide();
})
frappe.web_form.validate = () => {
let tickets = frappe.web_form.get_value('full_conference_tickets');
if (tickets > 1) {
tshirts = frappe.web_form.fields_dict.tshirt_table.get_value();
total_tees = tshirts.reduce(function (acc, obj) { return acc + obj.quantity; }, 0);
if (total_tees > tickets) {
frappe.throw(`You can only choose ${tickets} T-Shirts.`)
} else if (total_tees < tickets) {
frappe.throw(`You have selected sizes for only ${total_tees} T-Shirts, you can choose ${tickets - total_tees} more`)
}
}
}
})

View File

@@ -9,6 +9,7 @@
"amount": 0.0,
"amount_based_on_field": 1,
"amount_field": "amount",
"client_script": "",
"creation": "2017-07-06 16:25:22.393979",
"currency": "INR",
"doc_type": "Conference Participant",
@@ -17,17 +18,19 @@
"idx": 0,
"introduction_text": "",
"is_standard": 1,
"login_required": 1,
"login_required": 0,
"max_attachment_size": 0,
"modified": "2018-10-25 11:55:10.928574",
"modified": "2019-08-02 20:42:18.541094",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "buy-tickets-inr",
"owner": "Administrator",
"payment_button_label": "Buy Now",
"payment_gateway": "Razorpay",
"published": 0,
"published": 1,
"route": "buy-tickets-inr",
"route_to_success_link": 0,
"show_attachments": 0,
"show_in_grid": 0,
"show_sidebar": 0,
"sidebar_items": [],
@@ -48,7 +51,34 @@
},
{
"allow_read_on_all_link_options": 0,
"description": "Rs 4000 per person. Includes lunch and dinner on both days",
"fieldname": "participant_designation",
"fieldtype": "Select",
"hidden": 0,
"label": "Your role at your organization",
"max_length": 0,
"max_value": 0,
"options": "\nCxO\nAnalyst\nConsultant\nDeveloper\nSystem Administrator\nOther",
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"default": "",
"fieldname": "email",
"fieldtype": "Data",
"hidden": 0,
"label": "Email",
"max_length": 0,
"max_value": 0,
"options": "Email",
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"description": "\u20b9 5000 per person. Includes lunch and dinner on both days",
"fieldname": "full_conference_tickets",
"fieldtype": "Int",
"hidden": 0,
@@ -59,6 +89,19 @@
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "tshirt_table",
"fieldtype": "Table",
"hidden": 0,
"label": "T-Shirt Sizes",
"max_length": 0,
"max_value": 0,
"options": "TShirt Sizes",
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "tshirt_size",

View File

@@ -1,17 +1,41 @@
frappe.ready(function() {
// bind events here
frappe._calculate = function() {
frappe.web_form.field_group.set_value('amount',
parseInt(frappe.web_form.field_group.get_value('full_conference_tickets') || 0) * 60
frappe.web_form.set_value('amount',
parseInt(frappe.web_form.get_value('full_conference_tickets') || 0) * 70
)
};
setTimeout(() => {
$('.btn-form-submit').hide();
frappe.web_form.events.on('after_load', () => {
frappe.web_form.set_df_property('tshirt_table', 'hidden', 1);
$('input[data-fieldname="full_conference_tickets"]').on('keyup', function() {
frappe._calculate();
let value = frappe.web_form.get_value('full_conference_tickets')
console.log(value)
if (value > 1) {
frappe.web_form.set_df_property('tshirt_table', 'hidden', 0);
frappe.web_form.set_df_property('tshirt_size', 'hidden', 1);
} else {
frappe.web_form.set_df_property('tshirt_table', 'hidden', 1);
frappe.web_form.set_df_property('tshirt_size', 'hidden', 0);
}
});
frappe._calculate();
}, 1000);
$('.btn-form-submit').hide();
})
frappe.web_form.validate = () => {
let tickets = frappe.web_form.get_value('full_conference_tickets');
if (tickets > 1) {
tshirts = frappe.web_form.fields_dict.tshirt_table.get_value();
total_tees = tshirts.reduce(function (acc, obj) { return acc + obj.quantity; }, 0);
if (total_tees > tickets) {
frappe.throw(`You can only choose ${tickets} T-Shirts.`)
} else if (total_tees < tickets) {
frappe.throw(`You have selected sizes for only ${total_tees} T-Shirts, you can choose ${tickets - total_tees} more`)
}
}
}
})

View File

@@ -17,17 +17,19 @@
"idx": 0,
"introduction_text": "",
"is_standard": 1,
"login_required": 1,
"login_required": 0,
"max_attachment_size": 0,
"modified": "2018-10-25 11:56:03.656894",
"modified": "2019-08-02 20:43:12.676233",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "buy-tickets-paypal",
"owner": "Administrator",
"payment_button_label": "Buy Now",
"payment_gateway": "PayPal",
"published": 0,
"published": 1,
"route": "buy-tickets-paypal",
"route_to_success_link": 0,
"show_attachments": 0,
"show_in_grid": 0,
"show_sidebar": 0,
"sidebar_items": [
@@ -54,7 +56,34 @@
},
{
"allow_read_on_all_link_options": 0,
"description": "$60 per person. Includes lunch and dinner on both days",
"fieldname": "participant_designation",
"fieldtype": "Select",
"hidden": 0,
"label": "Your role at your organization",
"max_length": 0,
"max_value": 0,
"options": "\nCxO\nAnalyst\nConsultant\nDeveloper\nSystem Administrator\nOther",
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"default": "",
"fieldname": "email",
"fieldtype": "Data",
"hidden": 0,
"label": "Email",
"max_length": 0,
"max_value": 0,
"options": "Email",
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"description": "$70 per person. Includes lunch and dinner on both days",
"fieldname": "full_conference_tickets",
"fieldtype": "Int",
"hidden": 0,
@@ -65,6 +94,19 @@
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "tshirt_table",
"fieldtype": "Table",
"hidden": 0,
"label": "T-Shirt Sizes",
"max_length": 0,
"max_value": 0,
"options": "TShirt Sizes",
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "tshirt_size",

View File

@@ -0,0 +1,3 @@
frappe.ready(function() {
// bind events here
})

View File

@@ -0,0 +1,112 @@
{
"accept_payment": 0,
"allow_comments": 0,
"allow_delete": 0,
"allow_edit": 0,
"allow_incomplete": 0,
"allow_multiple": 0,
"allow_print": 0,
"amount": 0.0,
"amount_based_on_field": 0,
"button_label": "Save",
"creation": "2019-08-02 20:24:57.913609",
"doc_type": "Conference Request",
"docstatus": 0,
"doctype": "Web Form",
"idx": 0,
"is_standard": 1,
"login_required": 0,
"max_attachment_size": 0,
"modified": "2019-08-02 20:27:05.106516",
"modified_by": "Administrator",
"module": "ERPNext Foundation",
"name": "request-a-call",
"owner": "Administrator",
"payment_button_label": "Buy Now",
"published": 1,
"route": "request-a-call",
"route_to_success_link": 0,
"show_attachments": 0,
"show_in_grid": 0,
"show_sidebar": 0,
"sidebar_items": [],
"success_url": "/request-a-call",
"title": "Request a Call",
"web_form_fields": [
{
"allow_read_on_all_link_options": 0,
"fieldname": "contact_name",
"fieldtype": "Data",
"hidden": 0,
"label": "Contact Name",
"max_length": 0,
"max_value": 0,
"read_only": 0,
"reqd": 1,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "contact_number",
"fieldtype": "Data",
"hidden": 0,
"label": "Contact Number",
"max_length": 0,
"max_value": 0,
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "email",
"fieldtype": "Data",
"hidden": 0,
"label": "Email",
"max_length": 0,
"max_value": 0,
"options": "Email",
"read_only": 0,
"reqd": 1,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "organization_name",
"fieldtype": "Data",
"hidden": 0,
"label": "Organization Name",
"max_length": 0,
"max_value": 0,
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"default": "Sponsorship",
"fieldname": "request_type",
"fieldtype": "Select",
"hidden": 0,
"label": "Request Type",
"max_length": 0,
"max_value": 0,
"options": "Sponsorship\nExhibit Program",
"read_only": 0,
"reqd": 1,
"show_in_filter": 0
},
{
"allow_read_on_all_link_options": 0,
"fieldname": "message",
"fieldtype": "Text Editor",
"hidden": 0,
"label": "Message",
"max_length": 0,
"max_value": 0,
"read_only": 0,
"reqd": 0,
"show_in_filter": 0
}
]
}

View File

@@ -0,0 +1,7 @@
from __future__ import unicode_literals
import frappe
def get_context(context):
# do your magic here
pass

View File

@@ -47,17 +47,17 @@ website_context = {
{"label": "ERPNext", "child_items":[
{"label": "User Stories", "url": "/stories"},
{"label": "Get ERPNext", "url": "/get-started"},
{"label": "User Manual", "url": "/docs/user"},
{"label": "User Manual", "url": "https://erpnext.com/docs/user"},
{"label": "Free Trial", "url": "https://erpnext.com"},
{"label": "Open Source", "url": "/open-source"},
{"label": "Contribute", "url": "/contribute"},
{"label": "Version 11", "url": "/releases/version-11"}
{"label": "Version 12", "url": "https://erpnext.com/version-12"}
], "right":1},
{"label": "Community", "child_items":[
{"label": "Forum", "url": "https://discuss.erpnext.com", "target": "target='_blank'"},
{"label": "Chapters", "url": "/chapter-list"},
{"label": "Fellows", "url": "/fellows"},
{"label": "Conference 2018", "url": "/conf/2018"},
{"label": "Conference 2019", "url": "/conf/2019"},
], "right":1},
{"label": "Services", "child_items":[
{"label": "Member Listing", "url": "/service-providers"},

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

@@ -13,3 +13,11 @@ body[data-path*="erpnext-jobs"] .breadcrumb {
.embed-responsive {
margin-bottom: 2rem;
}
.splash {
display: none;
}
.row-index .hidden-xs {
display: inline-block !important;
}

View File

@@ -60,7 +60,7 @@
<h6 class="text-light">Community</h6>
<ul class="list-unstyled">
<li class="mb-2">
<a class="text-muted" href="/conf/2018">Conference 2018</a>
<a class="text-muted indicator blue" href="/conf/2019">Conference 2019</a>
</li>
<li class="mb-2">
<a class="text-muted" href="https://discuss.erpnext.com" target="_blank" >Forum</a>
@@ -96,7 +96,7 @@
<h6 class="text-light">Documentation</h6>
<ul class="list-unstyled">
<li class="mb-2">
<a class="text-muted indicator blue" href="/releases/version-11">Version 11</a>
<a class="text-muted" href="https://erpnext.com/version-12">Version 12</a>
<li class="mb-2">
<a class="text-muted" href="/docs/user/manual">Manual</a>
</li>

View File

@@ -97,9 +97,9 @@
<img class="card-img-top greyscale"
src="{{ item.image }}" alt="{{ item.name }}">
<div class="card-body">
<h5>{{ item.name }}</h5>
<h5 class="mb-1">{{ item.name }}</h5>
<div>{{ item.designation }}</div>
<div class='small'>{{ item.bio }}</div>
<div class='small mt-2'>{{ item.bio }}</div>
</div>
</div>
{% if loop.index is divisibleby 3 %}

View File

@@ -7,49 +7,49 @@
'city': 'Mumbai, India',
'meetup-link': 'https://www.meetup.com/ERPNext-Community-Meetup/',
'image': '/assets/foundation/img/meetups/mumbai.png',
'members': 720
'members': 955
},
{
'city': 'Bengaluru, India',
'meetup-link': 'https://www.meetup.com/ERPNext-Bangalore-Community/',
'image': '/assets/foundation/img/meetups/bengaluru.png',
'members': 590
'members': 400
},
{
'city': 'Bay Area, United States',
'meetup-link': 'https://www.meetup.com/ERPNext-Community-Bay-Area/',
'image': '/assets/foundation/img/meetups/bay-area.png',
'members': 15
'members': 20
},
{
'city': 'Pune, India',
'meetup-link': 'https://www.meetup.com/Pune-ERPNext-Meetup/',
'image': '/assets/foundation/img/meetups/pune.png',
'members': 540
'members': 810
},
{
'city': 'New England, United States',
'meetup-link': 'https://www.meetup.com/ERPNext-New-England/',
'image': '/assets/foundation/img/meetups/new-england.png',
'members': 10
'city': 'Chennai, India',
'meetup-link': 'https://www.meetup.com/ERPNext-Chennai-Community/',
'image': '/assets/foundation/img/meetups/chennai.jpg',
'members': 33
},
{
'city': 'Dubai, UAE',
'meetup-link': 'https://www.meetup.com/UAE-ERPNext-Meetup/',
'meetup-link': 'https://www.meetup.com/Erpnext-UAE/',
'image': '/assets/foundation/img/meetups/dubai.png',
'members': 53
'members': 31
},
{
'city': 'Germany',
'meetup-link': 'https://www.meetup.com/ERPNext-German-Chapter/',
'image': '/assets/foundation/img/meetups/frankfurt.png',
'members': 7
'members': 32
},
{
'city': 'Jakarta, Indonesia',
'meetup-link': 'https://www.meetup.com/ERPNext-Jakarta-Community-Meetup/',
'image': '/assets/foundation/img/meetups/jakarta.png',
'members': 55
'members': 80
},
{
'city': 'Paris, France',
@@ -57,6 +57,12 @@
'image': '/assets/foundation/img/meetups/paris.png',
'members': 20
},
{
'city': 'Zürich, Switzerland',
'meetup-link': 'https://www.meetup.com/ERPNext-Swiss-Chapter/',
'image': '/assets/foundation/img/meetups/zurich.jpg',
'members': 38
}
] %}
<section class='section-padding splash'
style='background-image: url(/assets/foundation/img/meetups/meetup.jpg)'>
@@ -69,22 +75,22 @@
Become a part of your local ERPNext Community by joining a chapter near you.
If you can't find one, start your own!
</p>
<div class='card-deck mt-5'>
<div class='row mt-5'>
{% for item in chapters %}
<a href='{{ item['meetup-link' ]}}' target='_blank' class='card mb-4'>
<div class="col-sm-4">
<div class="card mb-4">
<a href='{{ item['meetup-link' ]}}' target='_blank'>
<img class="card-img-top greyscale" src="{{ item.image }}" alt="{{ item.city }}">
<div class="card-body">
<h5>{{ item.city }}</h5>
<div class='text-muted'>{{ item.members }} members</div>
</div>
</a>
{% if loop.index is divisibleby 3 %}
</div>
<div class='card-deck'>
{% endif %}
</div>
{% endfor %}
</div>
<div class="text-center mx-auto">
<div class='text-muted mt-4'>
To start your own chapter, start a group on <a href='https://meetup.com' target='_blank'>Meetup.com</a> and get in touch with us.
</div>
@@ -92,5 +98,6 @@
<a class='mt-4 btn-dark btn' href="/contact">Contact Us To Start a New Chapter</a>
</div>
</div>
</div>
</section>
{% endblock %}

View File

View File

@@ -0,0 +1,110 @@
{% extends "templates/base.html" %}
{% block title %}Exhibit Program{% endblock %}
{% block content %}
<section class='top-section'>
<div class='container d-md-flex align-self-center justify-content-between flex-row-reverse'>
<div class="flex-item-30 d-none d-md-block">
<img src='/assets/foundation/img/illustrations/people-hand-shake.png' alt='People Meeting at Expo'>
</div>
<div>
<h1>Exhibit Program</h1>
<p class='lead'>
Showcase the services you provide for ERPNext to the global community,
understand their challenges and explore solutions with them.
</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/request-a-call">Book a Stall</a>
</p>
</div>
</div>
</section>
<section class="section-padding section-bg">
<div class='container'>
<div class="text-center">
<h2>Details</h2>
<p class='lead'>Mysore Association Auditorium, Matunga East <br> 17 and 18 October, 8:30 AM onwards</p>
</div>
<div class="mt-7 container-md mx-auto">
<div class="mb-5">
<ul class="list">
<li>Venue: Mysore Association Auditorium, King’s Circle Matunga East, Mumbai - 400019</li>
<li>Breakfast starts at 8:30 AM</li>
<li>Lunch break will be at 1:00 PM</li>
<li>Dinner starts at 6:30 PM at Matunga Gujarati Seva Mandal</li>
</ul>
</div>
<!--<div class="mb-5">
<h3>Stalls</h3>
<ul class="list">
<li>Issue Cleanup Sprint: Review and respond to un-replied issues. Review all old issues and either tag them or close them if they are not relevant.</li>
<li>Documentation Sprint: Writing missing documentation for ERPNext modules or features.</li>
<li>Article Writing Sprint: Write general purpose articles on ERP systems, benefits, challenges, implementation strategies that can be published on ERPNext.org</li>
</ul>
</div>
<div class="mb-5">
<h3>Developer Activities</h3>
<ul class="list">
<li>Bug quashing sprint: Try and fix all issues tagged as “bug” on GitHub Issues.</li>
<li>Build a feature: Scratch your own itch by contributing a feature you really want in the product.</li>
<li>Test Coverage Sprint: Add test coverage, refactor tests where missing.</li>
<li>Documentation Sprint: Add missing developer documentation.</li>
</ul>
</div>-->
</div>
</div>
</section>
<section class="section-padding">
<div class='container'>
<div class='text-center'>
<h2>Other Events</h2>
<p class='lead'>Connect with the core team, maintainers, developers, implementors. If you are connected to ERPNext, this is an event you cannot miss.</p>
</div>
<div class="mt-7">
<a href="/conf/2019/sprint" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/typing-on-a-computer.png' alt='Person Contributing'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Contribution Sprint</h3>
<p>Join the global community of ERPNext developers and users for a
two day contribution sprint and contribute new features,
fixes and documentation.</p>
<p>KJ Somaiya College of Engineering <br> 15 and 16 October</p>
</div>
</div>
</a>
<a href="/conf/2019/talks" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/group.png' alt='Group of people'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Talks and Sessions</h3>
<p>Interact about the product road-map, learn about the new and
exciting features, stories and best practices.</p>
<p>Mysore Association Auditorium, Matunga <br> 17 and 18 October</p>
</div>
</div>
</a>
</div>
</div>
</section>
{% from "www/conf/2019/sponsor.html" import sponsor %}
{{ sponsor() }}
<section class="section-padding text-center">
<div class='container'>
<h2>ERPNext Foundation</h2>
<p class="lead m-auto">ERPNext Conference is a community event driven by the community and organized by the ERPNext Open Source Software Foundation.</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-inr">Buy Tickets (INR)</a>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-paypal">Buy Tickets (USD)</a>
</p>
</div>
</section>
{% endblock %}

View File

@@ -0,0 +1,99 @@
{% extends "templates/base.html" %}
{% block title %}ERPNext Conference 2019{% endblock %}
{% block content %}
<section class='hero-section'>
<div class='container d-md-flex justify-content-between flex-row-reverse'>
<!-- <img src='/assets/foundation/img/icons/microprocessor.svg' style='height: 100px; margin-bottom: 2rem; margin-top: -1rem'> -->
<div class="flex-item-40 d-none d-md-block">
<img src='/assets/foundation/img/illustrations/enterprise-buildings.png' alt='Enterprise Buildings'>
</div>
<div class="align-self-center">
<p class='lead' style="font-size:1.5em;">
ERPNext Conference 2019
</p>
<h1>Next Generation Enterprise</h1>
<p class='lead mt-5'>
October 15 - 18, Mumbai
</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-inr">Buy Tickets (INR)</a>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-paypal">Buy Tickets (USD)</a>
</p>
</div>
</div>
</section>
<section class="section-padding text-center section-bg">
<div class='container'>
<p class="lead-max">
We are happy to announce the 6th edition of the ERPNext Conference!
The conference is a place for the entire community to meet the people
you chat with on the forum and understand what is happening in the ecosystem.
</p>
</section>
<section class="section-padding">
<div class='container'>
<div class='text-center'>
<h2>Events</h2>
<p class='lead'>Connect with the core team, maintainers, developers, implementors. If you are connected to ERPNext, this is an event you cannot miss.</p>
</div>
<div class="mt-7 container-md mx-auto">
<a href="/conf/2019/sprint" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/typing-on-a-computer.png' alt='Person Contributing'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Contribution Sprint</h3>
<p>Join the global community of ERPNext developers and users for a
two day contribution sprint and contribute new features,
fixes and documentation.</p>
<p>KJ Somaiya College of Engineering <br> 15 and 16 October</p>
</div>
</div>
</a>
<a href="/conf/2019/talks" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/group.png' alt='Group of people'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Talks and Sessions</h3>
<p>Interact about the product road-map, learn about the new and
exciting features, stories and best practices.</p>
<p>Mysore Association Auditorium, Matunga <br> 17 and 18 October</p>
</div>
</div>
</a>
<a href="/conf/2019/expo" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/people-hand-shake.png' alt='Bussiness People'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Exhibit Program</h3>
<p>Showcase the services you provide for ERPNext to the global community,
understand their challenges and explore solutions with them.</p>
</div>
</div>
</a>
</div>
</div>
</section>
{% from "www/conf/2019/sponsor.html" import sponsor %}
{{ sponsor() }}
<section class="section-padding text-center">
<div class='container'>
<h2>ERPNext Foundation</h2>
<p class="lead m-auto">ERPNext Conference is a community event driven by the community and organized by the ERPNext Open Source Software Foundation.</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-inr">Buy Tickets (INR)</a>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-paypal">Buy Tickets (USD)</a>
</p>
</div>
</section>
{% endblock %}

View File

@@ -0,0 +1,69 @@
{% set platinum_sponsors = [
{
'image': '/assets/foundation/img/conf/sponsors/frappe-logo.png',
'title': 'Frappe Technologies',
'website_url': 'http://frappe.io/'
},
{
'image': '/assets/foundation/img/people/tux.png',
'title': 'Your Awesome Company',
'website_url': 'http://www.example.com/'
}
] %}
{% macro show_section(sponsors, with_img = False, color=False) %}
<div class='row mt-4'>
{% for sponsor in sponsors %}
<div class='col-sm-4 mb-4'>
<a href='{{ ("{}{}".format("" if sponsor.website_url.startswith("http") else "//", sponsor.website_url)) if sponsor.website_url else "#" }}' target='_blank' class='card h-100'>
{% if with_img %}
<div class='square-img'>
<img class="{% if not color %}greyscale{% endif %} p-5"
src="{{ sponsor.image or "/assets/foundation/img/people/tux.png" }}"
alt="{{ sponsor.title }}">
</div>
{% endif %}
<div class="card-body">
<h6>
{{ sponsor.title }}
</h6>
</div>
</a>
</div>
{% if loop.index is divisibleby 4 %}
</div><div class='row'>
{% endif %}
{% endfor %}
</div>
{% endmacro %}
{% macro sponsor() %}
<section class="section-padding section-bg">
<div class='container text-center'>
<div>
<h2>Become a Sponsor</h2>
<p class='lead'>Become a patron for the conference and get associated with a global community of tens of thousands of users and developers.</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/request-a-call">Sponsor Us</a>
</p>
<a class="text-muted" href="/conf/2019/Conference 2019 Prospectus.pdf" target="_blank">Download Prospectus</a>
</div>
<div class="mt-7">
{% if platinum_sponsors %}
<h4>Platinum Sponsors<h4>
{{ show_section(platinum_sponsors, color=True, with_img=True) }}
{% endif %}
{% if gold_sponsors %}
<h4 class="mt-4">Gold Sponsors<h4>
{{ show_section(gold_sponsors, with_img=True) }}
{% endif %}
{% if silver_sponsors %}
<h4 class="mt-4">Silver Sponsors<h4>
{{ show_section(silver_sponsors, with_img=True) }}
{% endif %}
</div>
</div>
</section>
{% endmacro %}

View File

@@ -0,0 +1,111 @@
{% extends "templates/base.html" %}
{% block title %}Contribution Sprint{% endblock %}
{% block content %}
<section class='top-section'>
<div class='container d-md-flex align-self-center justify-content-between flex-row-reverse'>
<div class="flex-item-40 d-none d-md-block">
<img src='/assets/foundation/img/illustrations/typing-on-a-computer.png' alt='blocks'>
</div>
<div>
<h1>Contribution Sprint</h1>
<p class='lead'>
Join the global community of ERPNext developers and users for a
two day contribution sprint and contribute new features,
fixes and documentation.
</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-inr">Buy Tickets (INR)</a>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-paypal">Buy Tickets (USD)</a>
</p>
</div>
</div>
</section>
<section class="section-padding section-bg">
<div class='container'>
<div class="text-center">
<h2>Agenda</h2>
<p class='lead'>KJ Somaiya College of Engineering, Vidyavihar<br>15 and 16 October, 9:30 AM Onwards</p>
</div>
<div class="mt-7 container-md mx-auto">
<div class="mb-5">
<h3>Details</h3>
<ul class="list">
<li>Venue: K.J. Somaiya College of Engineering (5th Floor), Vidyavihar</li>
<li>Sprints starts at 10:00 AM</li>
<li>Lunch break will be at 1:00 PM at Somaiya Canteen</li>
<li>Group Dinner (optional, will be decided on the day of the event)</li>
</ul>
</div>
<div class="mb-5">
<h3>ERPNext User Activities</h3>
<ul class="list">
<li>Issue Cleanup Sprint: Review and respond to un-replied issues. Review all old issues and either tag them or close them if they are not relevant.</li>
<li>Documentation Sprint: Writing missing documentation for ERPNext modules or features.</li>
<li>Article Writing Sprint: Write general purpose articles on ERP systems, benefits, challenges, implementation strategies that can be published on ERPNext.org</li>
</ul>
</div>
<div class="mb-5">
<h3>Developer Activities</h3>
<ul class="list">
<li>Bug quashing sprint: Try and fix all issues tagged as “bug” on GitHub Issues.</li>
<li>Build a feature: Scratch your own itch by contributing a feature you really want in the product.</li>
<li>Test Coverage Sprint: Add test coverage, refactor tests where missing.</li>
<li>Documentation Sprint: Add missing developer documentation.</li>
</ul>
</div>
</div>
</div>
</section>
<section class="section-padding">
<div class='container'>
<div class='text-center'>
<h2>Other Events</h2>
<p class='lead'>Connect with the core team, maintainers, developers, implementors. If you are connected to ERPNext, this is an event you cannot miss.</p>
</div>
<div class="mt-7">
<a href="/conf/2019/talks" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/group.png' alt='Group of people'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Talks and Sessions</h3>
<p>Interact about the product road-map, learn about the new and
exciting features, stories and best practices.</p>
<p>Mysore Association Auditorium, Matunga <br> 17 and 18 October</p>
</div>
</div>
</a>
<a href="/conf/2019/expo" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/people-hand-shake.png' alt='Bussiness People'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Exhibit Program</h3>
<p>Showcase the services you provide for ERPNext to the global community,
understand their challenges and explore solutions with them.</p>
</div>
</div>
</a>
</div>
</div>
</section>
{% from "www/conf/2019/sponsor.html" import sponsor %}
{{ sponsor() }}
<section class="section-padding text-center">
<div class='container'>
<h2>ERPNext Foundation</h2>
<p class="lead m-auto">ERPNext Conference is a community event driven by the community and organized by the ERPNext Open Source Software Foundation.</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-inr">Buy Tickets (INR)</a>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-paypal">Buy Tickets (USD)</a>
</p>
</div>
</section>
{% endblock %}

View File

@@ -0,0 +1,114 @@
{% extends "templates/base.html" %}
{% block title %}Talks and Sessions{% endblock %}
{% block content %}
<section class='top-section'>
<div class='container d-md-flex align-self-center justify-content-between flex-row-reverse'>
<div class="flex-item-40 d-none d-md-block">
<img src='/assets/foundation/img/illustrations/group.png' alt='blocks'>
</div>
<div>
<h1>Talks and Sessions</h1>
<p class='lead'>
Interact about the product road-map, learn about the new and
exciting features, stories and best practices.
</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-inr">Buy Tickets (INR)</a>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-paypal">Buy Tickets (USD)</a>
</p>
</div>
</div>
</section>
<section class="section-padding section-bg">
<div class='container'>
<div class="text-center">
<h2>Agenda</h2>
<p class='lead'>Mysore Association Auditorium, Matunga East <br> 17 and 18 October, 8:30 AM onwards</p>
</div>
<div class="mt-7 container-md mx-auto">
<div class="mb-5">
<h3>Details</h3>
<ul class="list">
<li>Venue: Mysore Association Auditorium, King’s Circle Matunga East, Mumbai - 400019</li>
<li>Breakfast starts at 8:30 AM</li>
<li>Lunch break will be at 1:00 PM</li>
<li>Dinner starts at 6:30 PM at Matunga Gujarati Seva Mandal</li>
</ul>
</div>
<div class="mb-5">
<h3>Sessions on 17th October</h3>
<p>To be announced</p>
<!--<ul class="list">
<li>Venue: Mysore Association Auditorium, King’s Circle Matunga East, Mumbai - 400019</li>
<li>Breakfast starts at 8.30 AM</li>
<li>Lunch break will be at 1pm</li>
<li>Dinner starts at 6.30pm at Matunga Gujarati Seva Mandal</li>
</ul>-->
</div>
<div class="mb-5">
<h3>Session on 18th October</h3>
<p>To be announced</p>
<!--<ul class="list">
<li>Venue: Mysore Association Auditorium, King’s Circle Matunga East, Mumbai - 400019</li>
<li>Breakfast starts at 8.30 AM</li>
<li>Lunch break will be at 1pm</li>
<li>Dinner starts at 6.30pm at Matunga Gujarati Seva Mandal</li>
</ul>-->
</div>
</div>
</div>
</section>
<section class="section-padding">
<div class='container'>
<div class='text-center'>
<h2>Other Events</h2>
<p class='lead'>Connect with the core team, maintainers, developers, implementors. If you are connected to ERPNext, this is an event you cannot miss.</p>
</div>
<div class="mt-7">
<a href="/conf/2019/sprint" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/typing-on-a-computer.png' alt='Person Contributing'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Contribution Sprint</h3>
<p>Join the global community of ERPNext developers and users for a
two day contribution sprint and contribute new features,
fixes and documentation.</p>
<p>KJ Somaiya College of Engineering <br> 15 and 16 October</p>
</div>
</div>
</a>
<a href="/conf/2019/expo" class="no-border">
<div class="card-body row">
<div class="col-xs-12 col-sm-5 mb-4 mb-md-0">
<img class="px-5" src='/assets/foundation/img/illustrations/people-hand-shake.png' alt='Bussiness People'>
</div>
<div class="col-xs-12 col-sm-7">
<h3>Exhibit Program</h3>
<p>Showcase the services you provide for ERPNext to the global community,
understand their challenges and explore solutions with them.</p>
</div>
</div>
</a>
</div>
</div>
</section>
{% from "www/conf/2019/sponsor.html" import sponsor %}
{{ sponsor() }}
<section class="section-padding text-center">
<div class='container'>
<h2>ERPNext Foundation</h2>
<p class="lead m-auto">ERPNext Conference is a community event driven by the community and organized by the ERPNext Open Source Software Foundation.</p>
<p>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-inr">Buy Tickets (INR)</a>
<a class="mt-4 btn btn-dark btn" href="/buy-tickets-paypal">Buy Tickets (USD)</a>
</p>
</div>
</section>
{% endblock %}

View File

@@ -5,7 +5,7 @@
<div class='container'>
<h1>Getting Started with ERPNext</h1>
<p class="lead">ERPNext is Python based web application which runs on MariaDB. There are many ways to get started.<p>
<a class="btn btn-dark mt-4" href="https://demo.erpnext.com">See the Demo</a></p>
<a class="btn btn-dark mt-4" href="https://erpnext.com/demo">See the Demo</a></p>
</div>
</section>

View File

@@ -7,9 +7,13 @@
<!-- <section class='section-padding splash'
style='background-image: url(/assets/foundation/img/unsplash/digital-2.jpeg)'>
</section> -->
<section class='top-section'>
<div class='container'>
<section class='hero-section'>
<div class='container d-md-flex justify-content-between flex-row-reverse'>
<!-- <img src='/assets/foundation/img/icons/microprocessor.svg' style='height: 100px; margin-bottom: 2rem; margin-top: -1rem'> -->
<div class="flex-item-40 d-none d-md-block">
<img src='/assets/foundation/img/illustrations/baton.png' alt='baton'>
</div>
<div>
<h1>Building ERPNext Together</h1>
<p class='lead'>
ERPNext Foundation is a registered not for profit that helps build the ERPNext community and drive projects.
@@ -17,17 +21,18 @@
<p><a class="mt-4 btn btn-dark btn" href="/get-started">Get Started with ERPNext</a></p>
<p><a class="text-muted" href="/stories">Read user stories</a></p>
</div>
</div>
</section>
{% macro card(title, body, btnlink, badges) %}
{% macro card(title, body, badges) %}
<div class="col-sm mb-4">
<a href="{{ btnlink }}" class="card h-100">
<div class="card h-100">
<div class="card-body">
<h5>{{ title }}</h5>
<div class="card-text">{{ body }}</div>
<!-- <a href="{{ btnlink }}" class="btn btn-dark btn-sm">{{ btnlabel }}</a> -->
</div>
</a>
</div>
</div>
{% endmacro %}
<section class="section-padding section-bg">
@@ -36,25 +41,22 @@
<h2>Everything Included</h2>
<p class='lead'>ERPNext includes all modules and integrations out of the box so you can get started immediately</p>
</div>
<div class="row mt-5">
<div class="row mt-7">
{{ card(
"Financial Accounting",
"The heart of your business, everything flows through here.",
"/docs/user/manual/en/accounts",
["All"]
) }}
{{ card(
"CRM",
"Everything about your customers, stay in touch and keep them updated.",
"/docs/user/manual/en/CRM",
["All"]
) }}
{{ card(
"Inventory",
"What goes in, what comes out and where you can find it.",
"/docs/user/manual/en/stock",
["All"]
) }}
</div>
@@ -63,21 +65,18 @@
{{ card(
"Sales",
"Closing a deal and ensuring that it is successfully fulfilled.",
"/docs/user/manual/en/selling",
["All"]
) }}
{{ card(
"Purchasing",
"Keep track of purchases and stay on top of costs and budgets.",
"/docs/user/manual/en/buying",
["All"]
) }}
{{ card(
"Projects",
"Manage teams with multiple tasks, track time and costs.",
"/docs/user/manual/en/projects",
["All"]
) }}
</div>
@@ -86,21 +85,18 @@
{{ card(
"Manufacturing",
"From Bill of Material to Work Orders and movement of stock.",
"/docs/user/manual/en/manufacturing",
["Manufacturing"]
) }}
{{ card(
"Education",
"Manage students, classes, attendance, timetables, grades and fees.",
"/docs/user/manual/en/education",
["Education"]
) }}
{{ card(
"Healthcare",
"Patient care with appointments, consultation and lab reports.",
"/docs/user/manual/en/healthcare",
["Healthcare"]
) }}
</div>
@@ -109,21 +105,18 @@
{{ card(
"E-Commerce",
"Website listings, shopping cart, billing, payments and much more.",
"/docs/user/manual/en/website/shopping-cart",
["All"]
) }}
{{ card(
"Website",
"Fully featured content management with blogs, web pages and forms.",
"/docs/user/manual/en/website",
["All"]
) }}
{{ card(
"Support",
"Email integrated ticketing system with threaded replies and assignments.",
"/docs/user/manual/en/support",
["All"]
) }}
</div>
@@ -164,7 +157,7 @@
<section class="section-padding text-center section-bg">
<div class='container'>
<h2>ERPNext Foundation</h2>
<p class="lead lead-max m-auto text-muted">ERPNext Foundation is a
<p class="lead m-auto">ERPNext Foundation is a
registered not-for-profit organization that enables community to build and enhance ERPNext.</p>
<a href="/get-started" class="my-4 btn btn-dark">Get Started with ERPNext</a>
</div>

View File

@@ -117,7 +117,7 @@
</div>
</section>
<section class='section-padding'>
<section class='pt-0'>
<div class='container text-center'>
<p>
<a class='mt-4 btn-dark btn' href="/get-started">