@@ -0,0 +1,19 @@ | |||||
frappe.ui.form.on("File", "onload", function(frm) { | |||||
if(frappe.utils.is_image_file(frm.doc.file_url)){ | |||||
frm.doc.preview = '<div class="img_preview">\ | |||||
<img style="max-widht:130px;max-height:130px;" \ | |||||
src="'+frm.doc.file_url+'"></img>\ | |||||
</div>'; | |||||
frm.refresh_field("preview"); | |||||
} | |||||
}) | |||||
frappe.ui.form.on("File", "refresh", function(frm) { | |||||
frm.add_custom_button(__('Download'), function(){ | |||||
window.open(frm.doc.file_url); | |||||
}, "icon-download"); | |||||
}) | |||||
// frappe.ui.form.on("File", "download", function(frm) { | |||||
// window.open(frm.doc.file_url); | |||||
// }) |
@@ -3,7 +3,7 @@ frappe.provide("frappe.ui"); | |||||
frappe.listview_settings['File'] = { | frappe.listview_settings['File'] = { | ||||
hide_name_column: true, | hide_name_column: true, | ||||
use_route: true, | use_route: true, | ||||
add_fields: ["is_folder", "file_name", "file_url"], | |||||
add_fields: ["is_folder", "file_name", "file_url", "folder"], | |||||
formatters: { | formatters: { | ||||
file_size: function(value) { | file_size: function(value) { | ||||
// formatter for file size | // formatter for file size | ||||
@@ -22,7 +22,8 @@ frappe.listview_settings['File'] = { | |||||
} else if(frappe.utils.is_image_file(data.file_name)) { | } else if(frappe.utils.is_image_file(data.file_name)) { | ||||
data._title = '<i class="icon-picture icon-fixed-width"></i> ' + data.file_name; | data._title = '<i class="icon-picture icon-fixed-width"></i> ' + data.file_name; | ||||
} else { | } else { | ||||
data._title = '<i class="icon-file-alt icon-fixed-width"></i> ' + (data.file_name ? data.file_name : data.file_url); | |||||
data._title = '<i class="icon-file-alt icon-fixed-width"></i> \ | |||||
' + (data.file_name ? data.file_name : data.file_url); | |||||
} | } | ||||
}, | }, | ||||
onload: function(doclist) { | onload: function(doclist) { | ||||
@@ -33,12 +34,30 @@ frappe.listview_settings['File'] = { | |||||
doclist.listview.settings.setup_new_folder(doclist); | doclist.listview.settings.setup_new_folder(doclist); | ||||
doclist.listview.settings.setup_dragdrop(doclist); | doclist.listview.settings.setup_dragdrop(doclist); | ||||
doclist.$page.on("click", ".list-delete", function(event) { | |||||
doclist.listview.settings.add_menu_item_copy(doclist); | |||||
}) | |||||
}, | |||||
list_view_doc:function(doclist){ | |||||
alert("test") | |||||
$(doclist.wrapper).on("click", 'button[list_view_doc="'+doclist.doctype+'"]', function(){ | |||||
dialog = frappe.ui.get_upload_dialog({ | |||||
"args": { | |||||
"folder": doclist.current_folder, | |||||
"from_form": 1 | |||||
}, | |||||
callback: function() { | |||||
doclist.refresh(); | |||||
} | |||||
}); | |||||
}); | |||||
}, | }, | ||||
setup_new_folder: function(doclist) { | setup_new_folder: function(doclist) { | ||||
doclist.page.add_menu_item(__("New Folder"), function() { | doclist.page.add_menu_item(__("New Folder"), function() { | ||||
var d = frappe.prompt(__("Name"), function(values) { | var d = frappe.prompt(__("Name"), function(values) { | ||||
if((values.value.indexOf("/") > -1)){ | if((values.value.indexOf("/") > -1)){ | ||||
frappe.throw("Folder name should not include / !!!") | |||||
frappe.throw("Folder name should not include / !!!"); | |||||
return; | return; | ||||
} | } | ||||
var data = { | var data = { | ||||
@@ -82,6 +82,7 @@ def delete_doc(doctype=None, name=None, force=0, ignore_doctypes=None, for_reloa | |||||
update_naming_series(doc) | update_naming_series(doc) | ||||
delete_from_table(doctype, name, ignore_doctypes, doc) | delete_from_table(doctype, name, ignore_doctypes, doc) | ||||
doc.run_method("after_delete") | |||||
if doc: | if doc: | ||||
try: | try: | ||||
@@ -230,9 +230,14 @@ frappe.views.DocListView = frappe.ui.Listing.extend({ | |||||
// make_new_doc can be overridden so that default values can be prefilled | // make_new_doc can be overridden so that default values can be prefilled | ||||
// for example - communication list in customer | // for example - communication list in customer | ||||
$(this.wrapper).on("click", 'button[list_view_doc="'+me.doctype+'"]', function(){ | |||||
(me.listview.make_new_doc || me.make_new_doc).apply(me, [me.doctype]); | |||||
}); | |||||
if(this.listview.settings.list_view_doc) { | |||||
this.listview.settings.list_view_doc(this); | |||||
} | |||||
else{ | |||||
$(this.wrapper).on("click", 'button[list_view_doc="'+me.doctype+'"]', function(){ | |||||
(me.listview.make_new_doc || me.make_new_doc).apply(me, [me.doctype]); | |||||
}); | |||||
} | |||||
if((auto_run !== false) && (auto_run !== 0)) | if((auto_run !== false) && (auto_run !== 0)) | ||||
this.refresh(); | this.refresh(); | ||||
@@ -28,7 +28,7 @@ def upload(): | |||||
if not filename and not file_url: | if not filename and not file_url: | ||||
frappe.msgprint(_("Please select a file or url"), | frappe.msgprint(_("Please select a file or url"), | ||||
raise_exception=True) | raise_exception=True) | ||||
print folder | |||||
# save | # save | ||||
if filename: | if filename: | ||||
filedata = save_uploaded(dt, dn, folder) | filedata = save_uploaded(dt, dn, folder) | ||||
@@ -130,7 +130,7 @@ def get_random_filename(extn=None, content_type=None): | |||||
return random_string(7) + (extn or "") | return random_string(7) + (extn or "") | ||||
def save_file(fname, content, dt, dn, folder=None,decode=False): | |||||
def save_file(fname, content, dt, dn, folder=None, decode=False): | |||||
print [folder] | print [folder] | ||||
if decode: | if decode: | ||||
if isinstance(content, unicode): | if isinstance(content, unicode): | ||||