Переглянути джерело

[minor] print format in web form

version-14
Rushabh Mehta 8 роки тому
джерело
коміт
ecfb630246
6 змінених файлів з 58 додано та 16 видалено
  1. +2
    -2
      frappe/limits.py
  2. +4
    -3
      frappe/templates/generators/web_form.html
  3. +19
    -8
      frappe/templates/print_formats/standard_macros.html
  4. +0
    -1
      frappe/utils/scheduler.py
  5. +29
    -1
      frappe/website/doctype/web_form/web_form.json
  6. +4
    -1
      frappe/website/doctype/web_form/web_form.py

+ 2
- 2
frappe/limits.py Переглянути файл

@@ -4,11 +4,11 @@ from frappe import _
from frappe.utils import now_datetime, getdate, flt, cint, get_fullname
from frappe.installer import update_site_config
from frappe.utils.data import formatdate
from frappe.utils.user import get_enabled_system_users, get_system_managers
from frappe.utils.user import get_enabled_system_users
import os, subprocess, urlparse, urllib

class SiteExpiredError(frappe.ValidationError):
pass
http_status_code = 417

EXPIRY_WARNING_DAYS = 10



+ 4
- 3
frappe/templates/generators/web_form.html Переглянути файл

@@ -28,9 +28,10 @@
</a>
</div>
{% endif %}
{%- if allow_print and not is_list -%}
{%- if allow_print and not is_list and not _login_required -%}
<div class='text-right'>
<a class='text-muted small' href='/print?doctype={{ doc.doctype}}&name={{ doc.name }}' target="_blank">
<a class='text-muted small' href='/print?doctype={{ doc.doctype}}&name={{ doc.name }}
{%- if print_format -%}&format={{ print_format }}{%- endif -%}' target="_blank">
<i class='icon icon-print'></i> {{ _("Print") }}</a>
</div>
{%- endif -%}
@@ -43,7 +44,7 @@
{% endif %}
</div>
<div class="form-message alert alert-warning hide"></div>
{% if login_required and frappe.user=="Guest" %}
{% if _login_required %}
<div class="login-required">
<div class="text-muted">
{{ _("Please sign-up or login to begin") }}


+ 19
- 8
frappe/templates/print_formats/standard_macros.html Переглянути файл

@@ -5,6 +5,9 @@
<div>{{ frappe.render_template(df.options, {"doc": doc}) or "" }}</div>
{%- elif df.fieldtype in ("Text", "Text Editor", "Code") -%}
{{ render_text_field(df, doc) }}
{%- elif df.fieldtype in ("Image", "Attach Image", "Attach")
and (guess_mimetype(doc[df.fieldname])[0] or "").startswith("image/") -%}
{{ render_image(df, doc) }}
{%- else -%}
{{ render_field_with_label(df, doc) }}
{%- endif -%}
@@ -26,7 +29,7 @@
<tr>
<th style="width: 40px" class="table-sr">Sr</th>
{% for tdf in visible_columns %}
<th style="width: {{ get_width(tdf) }}px;" class="{{ get_align_class(tdf.fieldtype) }}" {{ fieldmeta(df) }}>
<th style="width: {{ get_width(tdf) }};" class="{{ get_align_class(tdf.fieldtype) }}" {{ fieldmeta(df) }}>
{{ _(tdf.label) }}</th>
{% endfor %}
</tr>
@@ -37,7 +40,7 @@
<td class="table-sr">{{ d.idx }}</td>
{% for tdf in visible_columns %}
<td class="{{ get_align_class(tdf.fieldtype) }}" {{ fieldmeta(df) }}>
<div class="value">{{ print_value(tdf, d, table_meta, doc) }}</div></td>
<div class="value">{{ print_value(tdf, d, doc) }}</div></td>
{% endfor %}
</tr>
{% endfor %}
@@ -82,17 +85,25 @@ data-fieldname="{{ df.fieldname }}" data-fieldtype="{{ df.fieldtype }}"
{%- endif -%}
{%- endmacro -%}

{%- macro print_value(df, doc, meta, parent_doc=None) -%}
{%- macro render_image(df, doc) -%}
{%- if df.label %}<label>{{ _(df.label) }}</label>{%- endif %}
{{ print_value(df, doc) }}
{% endmacro %}

{%- macro print_value(df, doc, parent_doc=None) -%}
{% if doc.print_templates and
doc.print_templates.get(df.fieldname) %}
{% include doc.print_templates[df.fieldname] %}
{% elif df.fieldtype=="Check" %}
<i class="{{ 'icon-check' if doc[df.fieldname] else 'icon-check-empty' }}"></i>
{% elif df.fieldtype=="Image" %}
<img src="{{ doc[doc.meta.get_field(df.fieldname).options] }}" class="img-responsive">
<img src="{{ doc[doc.meta.get_field(df.fieldname).options] }}"
class="img-responsive"
{%- if df.print_width %} style="width: {{ get_width(df) }};"{% endif %}>
{% elif df.fieldtype in ("Attach", "Attach Image") and doc[df.fieldname]
and (guess_mimetype(doc[df.fieldname])[0] or "").startswith("image/") %}
<img src="{{ doc[df.fieldname] }}" class="img-responsive">
<img src="{{ doc[df.fieldname] }}" class="img-responsive"
{%- if df.print_width %} style="width: {{ get_width(df) }};"{% endif %}>
{% elif df.fieldtype=="HTML" %}
{{ frappe.render_template(df.options, {"doc":doc}) }}
{% else %}
@@ -101,9 +112,9 @@ data-fieldname="{{ df.fieldname }}" data-fieldtype="{{ df.fieldtype }}"
{%- endmacro %}

{% macro get_width(df) -%}
{%- if df.print_width -%}{{ (df.print_width|str).replace("px", "") }}
{%- elif df.fieldtype in ("Int", "Check", "Float", "Currency") -%}{{ 80 }}
{%- else -%}{{ 150 }}{% endif -%}
{%- if df.print_width -%}{{ (df.print_width|str).replace("px", "") }}px
{%- elif df.fieldtype in ("Int", "Check", "Float", "Currency") -%}{{ 80 }}px
{%- else -%}{{ 150 }}px{% endif -%}
{%- endmacro %}

{% macro get_align_class(fieldtype) %}


+ 0
- 1
frappe/utils/scheduler.py Переглянути файл

@@ -79,7 +79,6 @@ def enqueue_events(site, queued_jobs):
last = frappe.db.get_value('System Settings', 'System Settings', 'scheduler_last_event')

# set scheduler last event
frappe.db.begin()
frappe.db.set_value('System Settings', 'System Settings',
'scheduler_last_event', nowtime.strftime(DATETIME_FORMAT),
update_modified=False)


+ 29
- 1
frappe/website/doctype/web_form/web_form.json Переглянути файл

@@ -321,6 +321,34 @@
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
"collapsible": 0,
"columns": 0,
"depends_on": "allow_print",
"fieldname": "print_format",
"fieldtype": "Link",
"hidden": 0,
"ignore_user_permissions": 0,
"ignore_xss_filter": 0,
"in_filter": 0,
"in_list_view": 0,
"label": "Print Format",
"length": 0,
"no_copy": 0,
"options": "Print Format",
"permlevel": 0,
"precision": "",
"print_hide": 0,
"print_hide_if_no_value": 0,
"read_only": 0,
"report_hide": 0,
"reqd": 0,
"search_index": 0,
"set_only_once": 0,
"unique": 0
},
{
"allow_on_submit": 0,
"bold": 0,
@@ -941,7 +969,7 @@
"issingle": 0,
"istable": 0,
"max_attachments": 0,
"modified": "2016-10-10 05:03:19.428894",
"modified": "2016-10-12 04:33:14.728373",
"modified_by": "Administrator",
"module": "Website",
"name": "Web Form",


+ 4
- 1
frappe/website/doctype/web_form/web_form.py Переглянути файл

@@ -107,6 +107,9 @@ def get_context(context):
self.set_web_form_module()

logged_in = frappe.session.user != "Guest"
self._login_required = self.login_required
if logged_in and self.login_required:
self._login_required = False

doc, delimeter = make_route_string(frappe.form_dict)
context.doc = doc
@@ -124,7 +127,7 @@ def get_context(context):
if self.is_standard:
self.use_meta_fields()

if self.login_required and logged_in:
if not self._login_required:
if self.allow_edit:
if self.allow_multiple:
if not frappe.form_dict.name and not frappe.form_dict.new:


Завантаження…
Відмінити
Зберегти