本文整理汇总了Python中Cheetah.Template.Template.name方法的典型用法代码示例。如果您正苦于以下问题:Python Template.name方法的具体用法?Python Template.name怎么用?Python Template.name使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cheetah.Template.Template
的用法示例。
在下文中一共展示了Template.name方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: view
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def view(id):
t = Template(file='templates/view.html')
data = db[id]
t.name = data['name']
t.item_list = data['items']
t.since = data['since']
t.place = data['place']
return str(t)
示例2: get_data
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def get_data(self, entry, metadata):
template = Template(self.data.decode(Bcfg2.Options.setup.encoding),
compilerSettings=self.settings)
template.metadata = metadata
template.name = entry.get('realname', entry.get('name'))
template.path = entry.get('realname', entry.get('name'))
template.source_path = self.name
template.repo = Bcfg2.Options.setup.repository
return template.respond()
示例3: get_data
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def get_data(self, entry, metadata):
template = Template(self.data.decode(self.encoding),
compilerSettings=self.settings)
template.metadata = metadata
template.name = entry.get('realname', entry.get('name'))
template.path = entry.get('realname', entry.get('name'))
template.source_path = self.name
template.repo = SETUP['repo']
return template.respond()
示例4: QueryContainer
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def QueryContainer(self, handler, query):
# Reject a malformed request -- these attributes should only
# appear in requests to send_file, but sometimes appear here
badattrs = ('Rotation', 'Width', 'Height', 'PixelShape')
for i in badattrs:
if i in query:
handler.send_error(404)
return
subcname = query['Container'][0]
cname = subcname.split('/')[0]
local_base_path = self.get_local_base_path(handler, query)
if not handler.server.containers.has_key(cname) or \
not self.get_local_path(handler, query):
handler.send_error(404)
return
def ImageFileFilter(f):
goodexts = ('.jpg', '.gif', '.png', '.bmp', '.tif', '.xbm',
'.xpm', '.pgm', '.pbm', '.ppm', '.pcx', '.tga',
'.fpx', '.ico', '.pcd', '.jpeg', '.tiff')
return os.path.splitext(f)[1].lower() in goodexts
def media_data(f):
if f.name in self.media_data_cache:
return self.media_data_cache[f.name]
item = {}
item['path'] = f.name
item['part_path'] = f.name.replace(local_base_path, '', 1)
item['name'] = os.path.split(f.name)[1]
item['is_dir'] = f.isdir
item['rotation'] = 0
item['cdate'] = '%#x' % f.cdate
item['mdate'] = '%#x' % f.mdate
self.media_data_cache[f.name] = item
return item
t = Template(photo_template, filter=EncodeUnicode)
t.name = subcname
t.container = cname
t.files, t.total, t.start = self.get_files(handler, query,
ImageFileFilter)
t.files = map(media_data, t.files)
t.quote = quote
t.escape = escape
page = str(t)
handler.send_response(200)
handler.send_header('Content-Type', 'text/xml')
handler.send_header('Content-Length', len(page))
handler.send_header('Connection', 'close')
handler.end_headers()
handler.wfile.write(page)
示例5: edit
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def edit(id):
t = Template(file='templates/edit.html')
data = db[id]
t.identifier = id
t.name = data['name']
t.content = "\n".join(x for x in data['items'])
t.since = data['since']
t.place = data['place']
return str(t)
示例6: formresults
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def formresults(environ, start_response):
request = environ["app.request"]
response = environ["app.response"]
session = environ["app.session"]
environ["app.session"] = session
html = Template(file=TMPL_PATH + "formResults.tmpl")
html.name = request.POST["name"]
html.session = session
start_response("200 OK", response.getHeaders())
return [html.respond()]
示例7: printer
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def printer(id):
t = Template(file='templates/print.html')
data = db[id]
t.id = id
t.name = data['name']
items = data['items']
items += ['']
n = int(math.floor(len(items) / 2.0))
item_pairs = [(k, items[n + m]) for m, k in enumerate(items[:n])]
t.item_list = item_pairs
t.since = data['since']
return str(t)
示例8: GET
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def GET(self):
log.debug("MainPage.GET begin")
(c_valid_cookie, c_name, c_password, c_supersecret) = check_for_cookies()
log.debug("cookie: " + str(c_valid_cookie) + " " + str(c_name) + " " +
str(c_password))
t = Template(file="./html/index.html")
t.ctx=web.webapi.ctx
if c_valid_cookie:
t.valid_user = True
t.name = c_name
data = db_get_energy(c_name)
if data is None:
t.max_energy = 0
t.current_energy = 0
else:
(t.max_energy, t.current_energy) = data
else:
t.valid_user = session.valid_user
t.name = session.name
t.max_energy = 0
t.current_energy = 0
log.debug("MainPage.GET end")
return str(t)
示例9: QueryContainer
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def QueryContainer(self, handler, query):
# Reject a malformed request -- these attributes should only
# appear in requests to send_file, but sometimes appear here
badattrs = ('Rotation', 'Width', 'Height', 'PixelShape')
for i in badattrs:
if i in query:
handler.send_error(404)
return
local_base_path = self.get_local_base_path(handler, query)
if not self.get_local_path(handler, query):
handler.send_error(404)
return
def ImageFileFilter(f):
goodexts = ('.jpg', '.gif', '.png', '.bmp', '.tif', '.xbm',
'.xpm', '.pgm', '.pbm', '.ppm', '.pcx', '.tga',
'.fpx', '.ico', '.pcd', '.jpeg', '.tiff', '.nef')
return os.path.splitext(f)[1].lower() in goodexts
def media_data(f):
if f.name in self.media_data_cache:
return self.media_data_cache[f.name]
item = {}
item['path'] = f.name
item['part_path'] = f.name.replace(local_base_path, '', 1)
item['name'] = os.path.basename(f.name)
item['is_dir'] = f.isdir
item['rotation'] = 0
item['cdate'] = '%#x' % f.cdate
item['mdate'] = '%#x' % f.mdate
self.media_data_cache[f.name] = item
return item
t = Template(PHOTO_TEMPLATE, filter=EncodeUnicode)
t.name = query['Container'][0]
t.container = handler.cname
t.files, t.total, t.start = self.get_files(handler, query,
ImageFileFilter)
t.files = map(media_data, t.files)
t.quote = quote
t.escape = escape
handler.send_xml(str(t))
示例10: QueryContainer
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def QueryContainer(self, handler, query):
tsn = handler.headers.getheader('tsn', '')
subcname = query['Container'][0]
useragent = handler.headers.getheader('User-Agent', '')
if not self.get_local_path(handler, query):
handler.send_error(404)
return
container = handler.container
force_alpha = container.getboolean('force_alpha')
use_html = query.get('Format', [''])[0].lower() == 'text/html'
files, total, start = self.get_files(handler, query,
self.video_file_filter,
force_alpha)
videos = []
local_base_path = self.get_local_base_path(handler, query)
for f in files:
video = VideoDetails()
mtime = f.mdate
try:
ltime = time.localtime(mtime)
except:
logger.warning('Bad file time on ' + unicode(f.name, 'utf-8'))
mtime = int(time.time())
ltime = time.localtime(mtime)
video['captureDate'] = hex(mtime)
video['textDate'] = time.strftime('%b %d, %Y', ltime)
video['name'] = os.path.basename(f.name)
video['path'] = f.name
video['part_path'] = f.name.replace(local_base_path, '', 1)
if not video['part_path'].startswith(os.path.sep):
video['part_path'] = os.path.sep + video['part_path']
video['title'] = os.path.basename(f.name)
video['is_dir'] = f.isdir
if video['is_dir']:
video['small_path'] = subcname + '/' + video['name']
video['total_items'] = self.__total_items(f.name)
else:
if len(files) == 1 or f.name in transcode.info_cache:
video['valid'] = transcode.supported_format(f.name)
if video['valid']:
video.update(self.metadata_full(f.name, tsn))
if len(files) == 1:
video['captureDate'] = hex(isogm(video['time']))
else:
video['valid'] = True
video.update(metadata.basic(f.name))
if self.use_ts(tsn, f.name):
video['mime'] = 'video/x-tivo-mpeg-ts'
else:
video['mime'] = 'video/x-tivo-mpeg'
video['textSize'] = metadata.human_size(f.size)
videos.append(video)
logger.debug('mobileagent: %d useragent: %s' % (useragent.lower().find('mobile'), useragent.lower()))
use_mobile = useragent.lower().find('mobile') > 0
if use_html:
if use_mobile:
t = Template(HTML_CONTAINER_TEMPLATE_MOBILE, filter=EncodeUnicode)
else:
t = Template(HTML_CONTAINER_TEMPLATE, filter=EncodeUnicode)
else:
t = Template(XML_CONTAINER_TEMPLATE, filter=EncodeUnicode)
t.container = handler.cname
t.name = subcname
t.total = total
t.start = start
t.videos = videos
t.quote = quote
t.escape = escape
t.crc = zlib.crc32
t.guid = config.getGUID()
t.tivos = config.tivos
t.tivo_names = config.tivo_names
if use_html:
handler.send_html(str(t))
else:
handler.send_xml(str(t))
示例11: QueryContainer
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def QueryContainer(self, handler, query):
tsn = handler.headers.getheader("tsn", "")
subcname = query["Container"][0]
if not self.get_local_path(handler, query):
handler.send_error(404)
return
container = handler.container
force_alpha = container.get("force_alpha", "False").lower() == "true"
use_html = query.get("Format", [""])[0].lower() == "text/html"
files, total, start = self.get_files(handler, query, self.video_file_filter, force_alpha)
videos = []
local_base_path = self.get_local_base_path(handler, query)
for f in files:
video = VideoDetails()
mtime = f.mdate
try:
ltime = time.localtime(mtime)
except:
logger.warning("Bad file time on " + unicode(f.name, "utf-8"))
mtime = int(time.time())
ltime = time.localtime(mtime)
video["captureDate"] = hex(mtime)
video["textDate"] = time.strftime("%b %d, %Y", ltime)
video["name"] = os.path.basename(f.name)
video["path"] = f.name
video["part_path"] = f.name.replace(local_base_path, "", 1)
if not video["part_path"].startswith(os.path.sep):
video["part_path"] = os.path.sep + video["part_path"]
video["title"] = os.path.basename(f.name)
video["is_dir"] = f.isdir
if video["is_dir"]:
video["small_path"] = subcname + "/" + video["name"]
video["total_items"] = self.__total_items(f.name)
else:
if len(files) == 1 or f.name in transcode.info_cache:
video["valid"] = transcode.supported_format(f.name)
if video["valid"]:
video.update(self.metadata_full(f.name, tsn))
if len(files) == 1:
video["captureDate"] = hex(isogm(video["time"]))
else:
video["valid"] = True
video.update(metadata.basic(f.name))
if self.use_ts(tsn, f.name):
video["mime"] = "video/x-tivo-mpeg-ts"
else:
video["mime"] = "video/x-tivo-mpeg"
video["textSize"] = "%.3f GB" % (float(f.size) / (1024 ** 3))
videos.append(video)
if use_html:
t = Template(HTML_CONTAINER_TEMPLATE, filter=EncodeUnicode)
else:
t = Template(XML_CONTAINER_TEMPLATE, filter=EncodeUnicode)
t.container = handler.cname
t.name = subcname
t.total = total
t.start = start
t.videos = videos
t.quote = quote
t.escape = escape
t.crc = zlib.crc32
t.guid = config.getGUID()
t.tivos = config.tivos
t.tivo_names = config.tivo_names
if use_html:
handler.send_html(str(t))
else:
handler.send_xml(str(t))
示例12: elif
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
if( str.find( cmax, '.' ) < 0):
cmax += ".0"
if( ch1 >= 'a' ) and ( ch1 <= 'z' ) and ( whofor == 'adult' ):
charge_name = ctype
unit = ''
elif ch1 == '(' :
unit = row[0]
#print ch1
chargeTemplate.period = 'weekly'
chargeTemplate.freq = '1.0'
desc = charge_name + " : " + whofor + " " + unit;
chargeTemplate.charge_name = desc;
chargeTemplate.comment = desc
targetTemplate.name = desc;
targetTemplate.targetsDescs = []
targetTemplate.charges = []
if( whofor == 'senior citizen' ):
targetTemplate.min_age = 60;
targetTemplate.max_age = 999;
elif( whofor == 'unemployed' ):
targetTemplate.min_age = 16;
targetTemplate.max_age = 59;
targetTemplate.targetsDescs.append( "ep.Include( target.employment, unemployed );" )
targetTemplate.targetsDescs.append( "ep.Include( target.employment, permanently_sick_disabled );" )
elif( whofor == 'juvenile' ):
targetTemplate.min_age = 8;
targetTemplate.max_age = 15;
elif( whofor == 'adult' ):
targetTemplate.min_age = 16;
示例13: QueryContainer
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def QueryContainer(self, handler, query):
def AudioFileFilter(f, filter_type=None):
ext = os.path.splitext(f)[1].lower()
if ext in ('.mp3', '.mp2') or (ext in TRANSCODE and
config.get_bin('ffmpeg')):
return self.AUDIO
else:
file_type = False
if not filter_type or filter_type.split('/')[0] != self.AUDIO:
if ext in PLAYLISTS:
file_type = self.PLAYLIST
elif os.path.isdir(f):
file_type = self.DIRECTORY
return file_type
def media_data(f):
if f.name in self.media_data_cache:
return self.media_data_cache[f.name]
item = {}
item['path'] = f.name
item['part_path'] = f.name.replace(local_base_path, '', 1)
item['name'] = os.path.basename(f.name)
item['is_dir'] = f.isdir
item['is_playlist'] = f.isplay
item['params'] = 'No'
if f.title:
item['Title'] = f.title
if f.duration > 0:
item['Duration'] = f.duration
if f.isdir or f.isplay or '://' in f.name:
self.media_data_cache[f.name] = item
return item
# If the format is: (track #) Song name...
#artist, album, track = f.name.split(os.path.sep)[-3:]
#track = os.path.splitext(track)[0]
#if track[0].isdigit:
# track = ' '.join(track.split(' ')[1:])
#item['SongTitle'] = track
#item['AlbumTitle'] = album
#item['ArtistName'] = artist
ext = os.path.splitext(f.name)[1].lower()
fname = f.name
try:
# If the file is an mp3, let's load the EasyID3 interface
if ext == '.mp3':
audioFile = MP3(fname, ID3=EasyID3)
else:
# Otherwise, let mutagen figure it out
audioFile = mutagen.File(fname)
if audioFile:
# Pull the length from the FileType, if present
if audioFile.info.length > 0:
item['Duration'] = int(audioFile.info.length * 1000)
# Grab our other tags, if present
def get_tag(tagname, d):
for tag in ([tagname] + TAGNAMES[tagname]):
try:
if tag in d:
value = d[tag][0]
if not isinstance(value, str):
value = str(value)
return value
except:
pass
return ''
artist = get_tag('artist', audioFile)
title = get_tag('title', audioFile)
if artist == 'Various Artists' and '/' in title:
artist, title = [x.strip() for x in title.split('/')]
item['ArtistName'] = artist
item['SongTitle'] = title
item['AlbumTitle'] = get_tag('album', audioFile)
item['AlbumYear'] = get_tag('date', audioFile)[:4]
item['MusicGenre'] = get_tag('genre', audioFile)
except Exception as msg:
logger.error(msg)
ffmpeg_path = config.get_bin('ffmpeg')
if 'Duration' not in item and ffmpeg_path:
cmd = [ffmpeg_path, '-hide_banner', '-nostdin', '-i', fname]
ffmpeg = subprocess.Popen(cmd, stderr=subprocess.PIPE,
stdout=subprocess.PIPE)
# wait 10 sec if ffmpeg is not back give up
for i in range(200):
#.........这里部分代码省略.........
示例14: QueryContainer
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
def QueryContainer(self, handler, query):
tsn = handler.headers.getheader('tsn', '')
subcname = query['Container'][0]
# If you are running 8.3 software you want to enable hack83
# in the config file
if config.getHack83():
print '=' * 73
query, hackPath = self.hack(handler, query, subcname)
hackPath = '/'.join(hackPath)
print 'Tivo said:', subcname, '|| Hack said:', hackPath
debug_write(__name__, fn_attr(), ['Tivo said: ', subcname, ' || Hack said: ',
hackPath])
subcname = hackPath
if not query:
debug_write(__name__, fn_attr(), ['sending 302 redirect page'])
handler.send_response(302)
handler.send_header('Location ', 'http://' +
handler.headers.getheader('host') +
'/TiVoConnect?Command=QueryContainer&' +
'AnchorItem=Hack8.3&Container=' + hackPath)
handler.end_headers()
return
# End hack mess
cname = subcname.split('/')[0]
if not handler.server.containers.has_key(cname) or \
not self.get_local_path(handler, query):
handler.send_response(404)
handler.end_headers()
return
container = handler.server.containers[cname]
precache = container.get('precache', 'False').lower() == 'true'
files, total, start = self.get_files(handler, query,
self.video_file_filter)
videos = []
local_base_path = self.get_local_base_path(handler, query)
for file in files:
mtime = datetime.fromtimestamp(os.stat(file).st_mtime)
video = VideoDetails()
video['captureDate'] = hex(int(time.mktime(mtime.timetuple())))
video['name'] = os.path.split(file)[1]
video['path'] = file
video['part_path'] = file.replace(local_base_path, '', 1)
video['title'] = os.path.split(file)[1]
video['is_dir'] = self.__isdir(file)
if video['is_dir']:
video['small_path'] = subcname + '/' + video['name']
video['total_items'] = self.__total_items(file)
else:
if precache or len(files) == 1 or file in transcode.info_cache:
video['valid'] = transcode.supported_format(file)
if video['valid']:
video.update(self.__metadata_full(file, tsn))
else:
video['valid'] = True
video.update(self.__metadata_basic(file))
videos.append(video)
handler.send_response(200)
handler.end_headers()
t = Template(file=os.path.join(SCRIPTDIR,'templates', 'container.tmpl'))
t.container = cname
t.name = subcname
t.total = total
t.start = start
t.videos = videos
t.quote = quote
t.escape = escape
t.crc = zlib.crc32
t.guid = config.getGUID()
t.tivos = handler.tivos
handler.wfile.write(t)
示例15: Template
# 需要导入模块: from Cheetah.Template import Template [as 别名]
# 或者: from Cheetah.Template.Template import name [as 别名]
local_base_path = self.get_local_base_path(handler, query)
if not self.get_local_path(handler, query):
handler.send_error(404)
return
if os.path.splitext(subcname)[1].lower() in PLAYLISTS:
t = Template(PLAYLIST_TEMPLATE, filter=EncodeUnicode)
t.files, t.total, t.start = self.get_playlist(handler, query)
else:
t = Template(FOLDER_TEMPLATE, filter=EncodeUnicode)
t.files, t.total, t.start = self.get_files(handler, query,
AudioFileFilter)
t.files = map(media_data, t.files)
t.container = handler.cname
t.name = subcname
t.quote = quote
t.escape = escape
handler.send_xml(str(t))
def QueryItem(self, handler, query):
uq = urllib.unquote_plus
splitpath = [x for x in uq(query['Url'][0]).split('/') if x]
path = os.path.join(handler.container['path'], *splitpath[1:])
if path in self.media_data_cache:
t = Template(ITEM_TEMPLATE, filter=EncodeUnicode)
t.file = self.media_data_cache[path]
t.escape = escape
handler.send_xml(str(t))