diff --git a/core/doctype/page/page.py b/core/doctype/page/page.py index 14b4e3581a..fdd81575a7 100644 --- a/core/doctype/page/page.py +++ b/core/doctype/page/page.py @@ -46,20 +46,6 @@ class DocType: cnt = 1 self.doc.name += '-' + str(cnt) - def validate(self): - """ - Update $image tags - """ - import re - p = re.compile('\$image\( (?P [^)]*) \)', re.VERBOSE) - if self.doc.content: - self.doc.content = p.sub(self.replace_by_img, self.doc.content) - - def replace_by_img(self, match): - import webnotes - name = match.group('name') - return '' % (webnotes.conn.get('Control Panel', None, 'account_id'), name) - # export def on_update(self): """ diff --git a/public/js/legacy/widgets/form/form.js b/public/js/legacy/widgets/form/form.js index 661f0fdf19..6a2c263bee 100644 --- a/public/js/legacy/widgets/form/form.js +++ b/public/js/legacy/widgets/form/form.js @@ -53,7 +53,7 @@ _f.Frm = function(doctype, parent, in_form) { this.docname = ''; this.doctype = doctype; this.display = 0; - this.refresh_if_stale_for = 600; + this.refresh_if_stale_for = 120; var me = this; this.last_view_is_edit = {}; @@ -881,16 +881,31 @@ _f.Frm.prototype.reload_doc = function() { var me = this; var onsave = function(r, rtxt) { // n tweets and last comment - me.runclientscript('setup', me.doctype, me.docname); + //me.runclientscript('setup', me.doctype, me.docname); me.refresh(); } if(me.doc.__islocal) { - // reload only doctype - $c('webnotes.widgets.form.load.getdoctype', {'doctype':me.doctype }, onsave, null, null, 'Refreshing ' + me.doctype + '...'); + wn.call({ + method: "webnotes.widgets.form.load.getdoctype", + args: { + doctype: me.doctype + }, + callback: function(r) { + me.refresh(); + } + }) } else { - // reload doc and docytpe - $c('webnotes.widgets.form.load.getdoc', {'name':me.docname, 'doctype':me.doctype, 'getdoctype':1, 'user':user}, onsave, null, null, 'Refreshing ' + me.docname + '...'); + wn.call({ + method: "webnotes.widgets.form.load.getdoc", + args: { + doctype: me.doctype, + name: me.docname + }, + callback: function(r) { + me.refresh(); + } + }); } } diff --git a/public/js/wn/model/create_new.js b/public/js/wn/model/create_new.js index 00e69b81e9..3cd1d6e798 100644 --- a/public/js/wn/model/create_new.js +++ b/public/js/wn/model/create_new.js @@ -40,6 +40,11 @@ $.extend(wn.model, { if(!in_list(no_value_fields, f.fieldtype) && doc[f.fieldname]==null) { var v = wn.model.get_default_value(f); if(v) { + if(in_list(["Int", "Check"], f.fieldtype)) + v = cint(v); + else if(in_list(["Currency", "Float"], f.fieldtype)) + v = flt(v); + doc[f.fieldname] = v; updated.push(f.fieldname); } diff --git a/public/js/wn/ui/dialog.js b/public/js/wn/ui/dialog.js index 35929b0d4c..6328403b18 100644 --- a/public/js/wn/ui/dialog.js +++ b/public/js/wn/ui/dialog.js @@ -63,7 +63,7 @@ wn.ui.Dialog = wn.ui.FieldGroup.extend({ this.appframe.$titlebar.find('.appframe-title').html(t || ''); }, set_postion: function() { - this.zindex = 1; + this.zindex = 10; if(cur_dialog) { this.zindex = cur_dialog.zindex + 1; } diff --git a/webnotes/model/doc.py b/webnotes/model/doc.py index 531be43105..1e3385fee7 100755 --- a/webnotes/model/doc.py +++ b/webnotes/model/doc.py @@ -111,8 +111,17 @@ class Document: def __str__(self): return str(self.fields) + def __repr__(self): + return repr(self.fields) + + def __unicode__(self): + return unicode(self.fields) + def __eq__(self, other): - return self.fields == other.fields + if isinstance(other, Document): + return self.fields == other.fields + else: + return False def __getstate__(self): return self.fields diff --git a/webnotes/model/meta.py b/webnotes/model/meta.py index 064eb15d22..b84fcc078f 100644 --- a/webnotes/model/meta.py +++ b/webnotes/model/meta.py @@ -72,7 +72,9 @@ def get_table_fields(doctype): return child_tables + custom_child_tables -def has_field(doctype, fieldname): - doclist = webnotes.model.doctype.get(doctype) - return doclist.get({"parent":doctype, "doctype":"DocField", "fieldname":fieldname}) - \ No newline at end of file +def has_field(doctype, fieldname, parent=None, parentfield=None): + return get_field(doctype, fieldname, parent=None, parentfield=None) and True or False + +def get_field(doctype, fieldname, parent=None, parentfield=None): + doclist = webnotes.get_doctype(doctype) + return doclist.get_field(fieldname, parent, parentfield) \ No newline at end of file diff --git a/webnotes/widgets/form/load.py b/webnotes/widgets/form/load.py index 7d623dba3c..3d1c41f336 100644 --- a/webnotes/widgets/form/load.py +++ b/webnotes/widgets/form/load.py @@ -26,7 +26,7 @@ import webnotes.model.doc import webnotes.utils @webnotes.whitelist() -def getdoc(): +def getdoc(doctype, name, user=None): """ Loads a doclist for a given document. This method is called directly from the client. Requries "doctype", "name" as form variables. @@ -35,18 +35,15 @@ def getdoc(): import webnotes - form = webnotes.form_dict - doctype, docname = form.get('doctype'), form.get('name') - - if not (doctype and docname): + if not (doctype and name): raise Exception, 'doctype and name required!' doclist = [] # single - doclist = load_single_doc(doctype, docname, (form.get('user') or webnotes.session['user'])) + doclist = load_single_doc(doctype, name, user or webnotes.session.user) # load doctype along with the doc - if form.get('getdoctype'): + if webnotes.form_dict.get('getdoctype'): import webnotes.model.doctype doclist += webnotes.model.doctype.get(doctype, processed=True)