67 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			67 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| # ERPNext - web based ERP (http://erpnext.com)
 | |
| # Copyright (C) 2012 Web Notes Technologies Pvt Ltd
 | |
| # 
 | |
| # This program is free software: you can redistribute it and/or modify
 | |
| # it under the terms of the GNU General Public License as published by
 | |
| # the Free Software Foundation, either version 3 of the License, or
 | |
| # (at your option) any later version.
 | |
| # 
 | |
| # This program is distributed in the hope that it will be useful,
 | |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| # GNU General Public License for more details.
 | |
| # 
 | |
| # You should have received a copy of the GNU General Public License
 | |
| # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | |
| 
 | |
| import webnotes
 | |
| 
 | |
| def execute():
 | |
| 	"""rename from getfle"""
 | |
| 	l = [
 | |
| 		('Quotation Item', 'description'),
 | |
| 		('Sales Order Item', 'description'),
 | |
| 		('Delivery Note Item', 'description'),
 | |
| 		('Sales Invoice Item', 'description'),
 | |
| 		('Item', 'description_html'),
 | |
| 		('Letter Head', 'content')
 | |
| 	]
 | |
| 	
 | |
| 	import re
 | |
| 	
 | |
| 	for table in l:
 | |
| 		for item in webnotes.conn.sql("""select name, %s from `tab%s` 
 | |
| 			where %s like '%s'""" % (table[1], table[0], table[1], '%cgi-bin/getfile.cgi%')):
 | |
| 			txt = re.sub('\&acx=[^"\']*', '', item[1])\
 | |
| 				.replace('cgi-bin/getfile.cgi?name=', 'files/')\
 | |
| 				.replace('FileData/', 'FileData-')
 | |
| 			
 | |
| 			txt = get_file_id(txt)
 | |
| 			
 | |
| 			webnotes.conn.sql("""update `tab%s` set %s=%s where name=%s""" % \
 | |
| 				(table[0], table[1], '%s', '%s'), (txt, item[0]))
 | |
| 	
 | |
| 	# control panel, client name
 | |
| 	txt = webnotes.conn.get_value('Control Panel',None,'client_name')
 | |
| 	if txt:
 | |
| 		txt = get_file_id(txt)
 | |
| 		webnotes.conn.set_value('Control Panel', None, 'client_name', txt.replace('index.cgi?cmd=get_file&fname=', 'files/'))
 | |
| 	
 | |
| def get_file_id(txt):
 | |
| 	"""old file links may be from fileid or filename"""
 | |
| 	import re
 | |
| 	match = re.search('files/([^"\']*)', txt)
 | |
| 
 | |
| 	if not match:
 | |
| 		print txt
 | |
| 		return txt
 | |
| 
 | |
| 	fname = match.groups()[0]
 | |
| 	if not fname.startswith('FileData'):
 | |
| 		fid = webnotes.conn.sql("""select name from `tabFile Data` 
 | |
| 			where file_name=%s""", fname)
 | |
| 		if fid:
 | |
| 			fid = fid[0][0].replace('/', '-')	
 | |
| 			txt = txt.replace(fname, fid)
 | |
| 	return txt
 |