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.
26 lines
640 B
26 lines
640 B
9 years ago
|
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)
|