Browse Source

fix in customize form, sync_install separated from sync_all

version-14
Anand Doshi 13 years ago
parent
commit
2f32db9fb6
4 changed files with 38 additions and 36 deletions
  1. +14
    -14
      py/core/doctype/customize_form/customize_form.js
  2. +3
    -13
      py/webnotes/install_lib/install.py
  3. +20
    -8
      py/webnotes/model/sync.py
  4. +1
    -1
      py/webnotes/widgets/form/load.py

+ 14
- 14
py/core/doctype/customize_form/customize_form.js View File

@@ -33,9 +33,10 @@ cur_frm.cscript.onload = function(doc, dt, dn) {

cur_frm.cscript.refresh = function(doc, dt, dn) {
//console.log(p)
$(cur_frm.frm_head.timestamp_area).toggle(false);
$(cur_frm.frm_head.page_head.buttons.Save).toggle(false);
$(cur_frm.page_layout.footer).toggle(false);
//$(cur_frm.frm_head.timestamp_area).toggle(false);
//$(cur_frm.frm_head.page_head.buttons.Save).toggle(false);
//$(cur_frm.page_layout.footer).toggle(false);
cur_frm.frm_head.appframe.clear_buttons();

cur_frm.add_custom_button('Update', function() {
if(cur_frm.fields_dict['doc_type'].value) {
@@ -43,17 +44,17 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
if(r.exc) {
msgprint(r.exc);
} else {
wn.ui.toolbar.clear_cache();
if(r.server_messages) { cur_frm.cscript.doc_type(doc, doc.doctype, doc.name); }
cur_frm.frm_head.status_area.innerHTML =
'<span style="padding: 2px; background-color: rgb(0, 170, 17); \
color: rgb(255, 255, 255); font-weight: bold; margin-left: 0px; \
font-size: 11px;">Saved</span>';
this.$w.find('.label-area').html(repl('<span class="label %(lab_class)s">\
%(lab_status)s</span>', {
lab_status: 'Saved',
lab_class: 'label-success'
}));
}
});
}
},1);
$(cur_frm.frm_head.page_head.buttons.Update).addClass('btn-info');
//$(cur_frm.frm_head.page_head.buttons.Update).addClass('btn-info');
cur_frm.add_custom_button('Refresh Form', function() {
cur_frm.cscript.doc_type(doc, dt, dn);
@@ -65,10 +66,10 @@ cur_frm.cscript.refresh = function(doc, dt, dn) {
}, 1);

if(!doc.doc_type) {
var page_head = cur_frm.frm_head.page_head;
page_head.buttons['Update'].disabled = true;
page_head.buttons['Refresh Form'].disabled = true;
page_head.buttons['Reset to defaults'].disabled = true;
var frm_head = cur_frm.frm_head.appframe;
$(frm_head.buttons['Update']).attr('disabled', true);
$(frm_head.buttons['Refresh Form']).attr('disabled', true);
$(frm_head.buttons['Reset to defaults']).attr('disabled', true);
}

cur_frm.cscript.hide_allow_attach(doc, dt, dn);
@@ -119,7 +120,6 @@ cur_frm.confirm = function(msg, doc, dt, dn) {
'<span style="padding: 2px; background-color: rgb(0, 170, 17); \
color: rgb(255, 255, 255); font-weight: bold; margin-left: 0px; \
font-size: 11px;">Saved</span>';
wn.ui.toolbar.clear_cache();
}
});
});


+ 3
- 13
py/webnotes/install_lib/install.py View File

@@ -79,9 +79,9 @@ class Installer:

# fresh app
if 'Framework.sql' in source_path:
from webnotes.model.sync import sync_core_doctypes
print "Building tables from core module..."
sync_core_doctypes()
from webnotes.model.sync import sync_install
print "Building tables from all module..."
sync_install()

# framework cleanups
self.framework_cleanups(target)
@@ -94,7 +94,6 @@ class Installer:
import webnotes
self.create_sessions_table()
self.create_scheduler_log()
self.create_doctype_cache()
self.create_session_cache()
self.create_cache_item()

@@ -127,15 +126,6 @@ class Installer:
error text
) engine=MyISAM""")
def create_doctype_cache(self):
import webnotes
self.dbman.drop_table('__DocTypeCache')
webnotes.conn.sql("""create table `__DocTypeCache` (
name VARCHAR(120),
modified DATETIME,
content TEXT,
server_code_compiled TEXT)""")
def create_session_cache(self):
import webnotes
self.dbman.drop_table('__SessionCache')


+ 20
- 8
py/webnotes/model/sync.py View File

@@ -5,19 +5,26 @@
import webnotes

def sync_all(force=0):
sync_core_doctypes(force)
sync_modules(force)
webnotes.conn.sql("DELETE FROM __CacheItem")
modules = []
modules += sync_core_doctypes(force)
modules += sync_modules(force)
try:
webnotes.conn.begin()
webnotes.conn.sql("DELETE FROM __CacheItem")
webnotes.conn.commit()
except Exception, e:
if e[0]!=1146: raise e
return modules

def sync_core_doctypes(force=0):
import os
import core
# doctypes
walk_and_sync(os.path.abspath(os.path.dirname(core.__file__)), force)
return walk_and_sync(os.path.abspath(os.path.dirname(core.__file__)), force)

def sync_modules(force=0):
import conf
walk_and_sync(conf.modules_path, force)
return walk_and_sync(conf.modules_path, force)

def walk_and_sync(start_path, force=0):
"""walk and sync all doctypes and pages"""
@@ -46,9 +53,7 @@ def walk_and_sync(start_path, force=0):
reload_doc(module_name, 'page', name)
print module_name + ' | ' + doctype + ' | ' + name
# load install docs
load_install_docs(modules)
return modules


# docname in small letters with underscores
@@ -124,6 +129,13 @@ def save_perms_if_none_exist(doclist):
if d.get('doctype') != 'DocPerm': continue
Document(fielddata=d).save(1, check_links=0, ignore_fields=1)

def sync_install(force=1):
# sync all doctypes
modules = sync_all(force)
# load install docs
load_install_docs(modules)

def load_install_docs(modules):
import os
if isinstance(modules, basestring): modules = [modules]


+ 1
- 1
py/webnotes/widgets/form/load.py View File

@@ -130,4 +130,4 @@ def get_search_criteria(dt):
for sc in sc_list:
if sc[0]:
dl += webnotes.model.doc.get('Search Criteria', sc[0])
return dl
return dl

Loading…
Cancel
Save