You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
640 B
25 lines
640 B
import re, os
|
|
from urllib import quote_plus, unquote_plus
|
|
|
|
|
|
groupnamepat = re.compile(r"^g\.(\w+)\$")
|
|
def splitpadname (padid):
|
|
m = groupnamepat.match(padid)
|
|
if m:
|
|
return(m.group(1), padid[m.end():])
|
|
else:
|
|
return (u"", padid)
|
|
|
|
def padpath (padid, pub_path=u"", group_path=u""):
|
|
g, p = splitpadname(padid)
|
|
if type(g) == unicode:
|
|
g = g.encode("utf-8")
|
|
if type(p) == unicode:
|
|
p = p.encode("utf-8")
|
|
p = quote_plus(p)
|
|
# p = p.replace(" ", "_")
|
|
# p = p.replace("*", "-")
|
|
if g:
|
|
return os.path.join(group_path, g, p)
|
|
else:
|
|
return os.path.join(pub_path, p)
|
|
|