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

@@ -28,7 +28,7 @@
<p>If you are an end user, don't fall prey to closed extensions, they are a short cut that will ultimately end up costing you a significant more time and money.</p>
{{ media(
"Revant Nandgaonkar",
''' I chose ERPNext over Odoo because ERPNext is Free Software with <a href="https://www.gnu.org/philosophy/free-sw.en.html" target="_blank">four essential freedoms</a>. ERPNext also has easy upgrades and migration. It is easy to deploy, backup and restore. And to top it off it, ERPNext is easy to develop with Frappe Framework. ''',
'''I chose ERPNext over Odoo because ERPNext is Free Software with <a href="https://www.gnu.org/philosophy/free-sw.en.html" target="_blank">four essential freedoms</a>. ERPNext also has easy upgrades and migration. It is easy to deploy, backup and restore. And to top it off it, ERPNext is easy to develop with Frappe Framework. ''',
"https://erpnext.org/files/revant.jpg"
)
}}

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">