fl = []
for file in repo.repo[latest_default]:
- m = re.match(u'^pub_([\\w\\$0-9_-]+).xml$', file.decode('utf-8'), re.UNICODE)
+ m = re.match(u'^pub_([^/]+).xml$', file.decode('utf-8'), re.UNICODE)
if m is not None:
fl.append(m.group(1))
@with_repo
def file_dc(request, path, repo):
errors = None
- rpath = file_path(fileid)
+ rpath = file_path(path)
if request.method == 'POST':
form = forms.DublinCoreForm(request.POST)
rpath = file_path(path)
user_branch = file_branch(path, request.user)
try:
- return {'html': html.transform(repo.get_file(rpath, user_branch), is_file=False)}
+ result = html.transform(repo.get_file(rpath, user_branch), is_file=False)
+ print "HTML: %r" % result
+ return {'html': result}
except (ParseError, ValidationError), e:
return direct_to_template(request, 'explorer/panels/parse_error.html', extra_context={
'fileid': path, 'exception_type': type(e).__name__, 'exception': e,
print "validating sform"
if sform.is_valid():
valid = True
- if sform.cleaned_data['autoxml']:
- print "validating dcform"
- valid = dcform.is_valid()
+# if sform.cleaned_data['autoxml']:
+# print "validating dcform"
+# valid = dcform.is_valid()
print "valid is ", valid
+
if valid:
uri = path + '$' + sform.cleaned_data['partname']
child_rpath = file_path(uri)
fulltext = sform.cleaned_data['fulltext']
fulltext = fulltext.replace(u'<include-tag-placeholder />',
- librarian.xinclude_forURI('wlrepo://'+uri) )
+ librarian.xinclude_forURI(u'wlrepo://'+uri) )
repo._write_file(rpath, fulltext.encode('utf-8'))
if sform.cleaned_data['autoxml']:
# this is a horrible hack - really
bi = dcparser.BookInfo.from_element(librarian.DEFAULT_BOOKINFO.to_etree())
- bi.update(dcform.cleaned_data)
+ bi.update(dcform.data)
newtext = librarian.wrap_text(newtext, \
unicode(date.today()), bookinfo=bi )
if repo.in_branch(split_action, file_branch(path, request.user)):
# redirect to success
+ import urllib
+ uri = urllib.quote( unicode(uri).encode('utf-8'))
return HttpResponseRedirect( reverse('split-success',\
- kwargs={'path': path})+'?child='+uri)
+ kwargs={'path': path})+'?child='+uri )
else:
try: # to read the current DC
repo = hg.Repository(settings.REPOSITORY_PATH)