本文整理汇总了PHP中Playlist::build_cache方法的典型用法代码示例。如果您正苦于以下问题:PHP Playlist::build_cache方法的具体用法?PHP Playlist::build_cache怎么用?PHP Playlist::build_cache使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Playlist
的用法示例。
在下文中一共展示了Playlist::build_cache方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: T_
?>
<ul>
<li>
<a href="javascript:void(0);" id="rb_append_dplaylist_new" onclick="handlePlaylistAction('<?php
echo AmpConfig::get('ajax_url') . '?page=playlist&action=append_item&item_type=' . $_REQUEST['item_type'] . '&item_id=' . $_REQUEST['item_id'];
?>
', 'rb_append_dplaylist_new');">
<?php
echo T_('Add to New Playlist');
?>
</a>
</li>
<?php
$playlists = Playlist::get_users($GLOBALS['user']->id);
Playlist::build_cache($playlists);
foreach ($playlists as $playlist_id) {
$playlist = new Playlist($playlist_id);
$playlist->format();
?>
<li>
<a href="javascript:void(0);" id="rb_append_dplaylist_<?php
echo $playlist->id;
?>
" onclick="handlePlaylistAction('<?php
echo AmpConfig::get('ajax_url') . '?page=playlist&action=append_item&playlist_id=' . $playlist->id . '&item_type=' . $_REQUEST['item_type'] . '&item_id=' . $_REQUEST['item_id'];
?>
', 'rb_append_dplaylist_<?php
echo $playlist->id;
?>
');">
示例2: show_objects
/**
* show_objects
* This takes an array of objects
* and requires the correct template based on the
* type that we are currently browsing
*
* @param int[] $object_ids
*/
public function show_objects($object_ids = null, $argument = null)
{
if ($this->is_simple() || !is_array($object_ids)) {
$object_ids = $this->get_saved();
} else {
$this->save_objects($object_ids);
}
// Limit is based on the user's preferences if this is not a
// simple browse because we've got too much here
if ($this->get_start() >= 0 && count($object_ids) > $this->get_start() && !$this->is_simple()) {
$object_ids = array_slice($object_ids, $this->get_start(), $this->get_offset(), true);
} else {
if (!count($object_ids)) {
$this->set_total(0);
}
}
// Load any additional object we need for this
$extra_objects = $this->get_supplemental_objects();
$browse = $this;
foreach ($extra_objects as $class_name => $id) {
${$class_name} = new $class_name($id);
}
$match = '';
// Format any matches we have so we can show them to the masses
if ($filter_value = $this->get_filter('alpha_match')) {
$match = ' (' . $filter_value . ')';
} elseif ($filter_value = $this->get_filter('starts_with')) {
$match = ' (' . $filter_value . ')';
/*} elseif ($filter_value = $this->get_filter('regex_match')) {
$match = ' (' . $filter_value . ')';
} elseif ($filter_value = $this->get_filter('regex_not_match')) {
$match = ' (' . $filter_value . ')';*/
} elseif ($filter_value = $this->get_filter('catalog')) {
// Get the catalog title
$catalog = Catalog::create_from_id(intval($filter_value));
$match = ' (' . $catalog->name . ')';
}
$type = $this->get_type();
// Update the session value only if it's allowed on the current browser
if ($this->get_update_session()) {
$_SESSION['browse_current_' . $type]['start'] = $browse->get_start();
}
// Set the correct classes based on type
$class = "box browse_" . $type;
$argument_param = $argument ? '&argument=' . scrub_in($argument) : '';
debug_event('browse', 'Show objects called for type {' . $type . '}', '5');
$limit_threshold = $this->get_threshold();
// Switch on the type of browsing we're doing
switch ($type) {
case 'song':
$box_title = T_('Songs') . $match;
Song::build_cache($object_ids, $limit_threshold);
$box_req = AmpConfig::get('prefix') . '/templates/show_songs.inc.php';
break;
case 'album':
Album::build_cache($object_ids);
$box_title = T_('Albums') . $match;
if (is_array($argument)) {
$allow_group_disks = $argument['group_disks'];
if ($argument['title']) {
$box_title = $argument['title'];
}
} else {
$allow_group_disks = false;
}
$box_req = AmpConfig::get('prefix') . '/templates/show_albums.inc.php';
break;
case 'user':
$box_title = T_('Users') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_users.inc.php';
break;
case 'artist':
$box_title = T_('Artists') . $match;
Artist::build_cache($object_ids, true, $limit_threshold);
$box_req = AmpConfig::get('prefix') . '/templates/show_artists.inc.php';
break;
case 'live_stream':
require_once AmpConfig::get('prefix') . '/templates/show_live_stream.inc.php';
$box_title = T_('Radio Stations') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_live_streams.inc.php';
break;
case 'playlist':
Playlist::build_cache($object_ids);
$box_title = T_('Playlists') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_playlists.inc.php';
break;
case 'playlist_song':
$box_title = T_('Playlist Songs') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_playlist_songs.inc.php';
break;
case 'playlist_localplay':
$box_title = T_('Current Playlist');
//.........这里部分代码省略.........
示例3: show_objects
/**
* show_objects
* This takes an array of objects
* and requires the correct template based on the
* type that we are currently browsing
*/
public function show_objects($object_ids = null, $argument = null)
{
if ($this->is_simple() || !is_array($object_ids)) {
$object_ids = $this->get_saved();
} else {
$this->save_objects($object_ids);
}
// Limit is based on the user's preferences if this is not a
// simple browse because we've got too much here
if (count($object_ids) > $this->get_start() && !$this->is_simple() && !$this->is_static_content()) {
$object_ids = array_slice($object_ids, $this->get_start(), $this->get_offset(), true);
} else {
if (!count($object_ids)) {
$this->set_total(0);
}
}
// Load any additional object we need for this
$extra_objects = $this->get_supplemental_objects();
$browse = $this;
foreach ($extra_objects as $class_name => $id) {
${$class_name} = new $class_name($id);
}
$match = '';
// Format any matches we have so we can show them to the masses
if ($filter_value = $this->get_filter('alpha_match')) {
$match = ' (' . $filter_value . ')';
} elseif ($filter_value = $this->get_filter('starts_with')) {
$match = ' (' . $filter_value . ')';
/*} elseif ($filter_value = $this->get_filter('regex_match')) {
$match = ' (' . $filter_value . ')';
} elseif ($filter_value = $this->get_filter('regex_not_match')) {
$match = ' (' . $filter_value . ')';*/
} elseif ($filter_value = $this->get_filter('catalog')) {
// Get the catalog title
$catalog = Catalog::create_from_id($filter_value);
$match = ' (' . $catalog->name . ')';
}
$type = $this->get_type();
// Set the correct classes based on type
$class = "box browse_" . $type;
debug_event('browse', 'Called for type {' . $type . '}', '5');
// Switch on the type of browsing we're doing
switch ($type) {
case 'song':
$box_title = T_('Songs') . $match;
Song::build_cache($object_ids);
$box_req = AmpConfig::get('prefix') . '/templates/show_songs.inc.php';
break;
case 'album':
$box_title = T_('Albums') . $match;
Album::build_cache($object_ids);
$allow_group_disks = $argument;
$box_req = AmpConfig::get('prefix') . '/templates/show_albums.inc.php';
break;
case 'user':
$box_title = T_('Manage Users') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_users.inc.php';
break;
case 'artist':
$box_title = T_('Artists') . $match;
Artist::build_cache($object_ids, 'extra');
$box_req = AmpConfig::get('prefix') . '/templates/show_artists.inc.php';
break;
case 'live_stream':
require_once AmpConfig::get('prefix') . '/templates/show_live_stream.inc.php';
$box_title = T_('Radio Stations') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_live_streams.inc.php';
break;
case 'playlist':
Playlist::build_cache($object_ids);
$box_title = T_('Playlists') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_playlists.inc.php';
break;
case 'playlist_song':
$box_title = T_('Playlist Songs') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_playlist_songs.inc.php';
break;
case 'playlist_localplay':
$box_title = T_('Current Playlist');
$box_req = AmpConfig::get('prefix') . '/templates/show_localplay_playlist.inc.php';
UI::show_box_bottom();
break;
case 'smartplaylist':
$box_title = T_('Smart Playlists') . $match;
$box_req = AmpConfig::get('prefix') . '/templates/show_smartplaylists.inc.php';
break;
case 'catalog':
$box_title = T_('Catalogs');
$box_req = AmpConfig::get('prefix') . '/templates/show_catalogs.inc.php';
break;
case 'shoutbox':
$box_title = T_('Shoutbox Records');
$box_req = AmpConfig::get('prefix') . '/templates/show_manage_shoutbox.inc.php';
break;
//.........这里部分代码省略.........