Exemple #1
0
/**
 * Writes HTML code for insertion of Ribcage specific releases feeds into the header of a page.
 *
 * @return void
 * @author Alex Andrews <*****@*****.**>
 */
function ribcage_release_feeds()
{
    global $wp_query;
    ?>
	<link rel="alternate" type="application/rss+xml" href="<a href="<?php 
    echo home_url();
    ?>
/releases/feed" title="<?php 
    echo get_option('blogname');
    ?>
 Releases RSS feed" />
	<?php 
    if (isset($wp_query->query_vars['artist_slug'])) {
        ?>
		<link rel="alternate" type="application/rss+xml" href="<a href="<?php 
        echo home_url();
        ?>
/artists/<?php 
        artist_slug();
        ?>
/feed" title="<?php 
        artist_name();
        ?>
 Releases RSS feed" />
		<?php 
    }
}
    ?>
]]></description>
		<content:encoded><![CDATA[<img src="<?php 
    release_cover_tiny();
    ?>
" align="right" style="margin-left: 20px; border: 1px solid #000;" alt="<?php 
    release_title();
    ?>
"/><?php 
    release_blurb_long();
    ?>
<p><a href="<?php 
    echo home_url();
    ?>
/artists/<?php 
    artist_slug();
    ?>
/<?php 
    release_slug();
    ?>
">More Information</a> - <a href="<?php 
    release_player_link();
    ?>
">Listen Now</a> - <a href="<?php 
    echo home_url();
    ?>
/download/<?php 
    release_slug();
    ?>
/">Free Download</a><?php 
    if (release_physical()) {
Exemple #3
0
/**
 * Manages artists - adds, deletes, edits.
 *
 * @author Alex Andrews <*****@*****.**>
 * @return void
 **/
function ribcage_manage_artists()
{
    global $artists;
    global $artist;
    $index = false;
    // If we aren't on an artist page then we are on the index page.
    if (isset($_REQUEST['artist'])) {
        $artist_id = (int) $_REQUEST['artist'];
    } elseif (isset($_REQUEST['page']) && $_REQUEST['page'] == 'add_artist') {
        $index = false;
    } else {
        $index = true;
    }
    register_column_headers('ribcage-manage-artist', array('cb' => '<input type="checkbox" />', 'artist' => 'Artist'));
    if (isset($_REQUEST['ribcage_action'])) {
        global $wpdb;
        // Refactor, this is a terrible place for this to do this.
        if ($_REQUEST['ribcage_action'] !== 'add') {
            check_admin_referer('manage_artists');
        } else {
            check_admin_referer('add_artist');
        }
        unset($_POST['_wpnonce']);
        unset($_POST['_wp_http_referer']);
        unset($_POST['Submit']);
        //split apart associative array into different parts to prepare for implodes
        $post_keys = array_keys($_POST);
        $post_vals = array_values($_POST);
        //construct field name list and vals to post
        $string_keys = implode($post_keys, ",");
        $string_vals = "'" . implode($post_vals, "','") . "'";
        $wpdb->show_errors();
        switch ($_REQUEST['ribcage_action']) {
            case 'edit':
                $sql = "UPDATE " . $wpdb->prefix . "ribcage_artists\n\t\t\t\t\t\tSET ";
                $i = 0;
                foreach ($post_keys as $field) {
                    $sql .= $field . "='" . $post_vals[$i] . "', ";
                    $i++;
                }
                $sql .= " artist_id = " . $artist_id . " \n\t\t\t\t\t\tWHERE artist_id = " . $artist_id;
                $results = $wpdb->query($sql);
                $wpdb->hide_errors();
                $artist = get_artist($artist_id);
                $message = 'updated';
                break;
            case 'add':
                $sql = "INSERT INTO " . $wpdb->prefix . "ribcage_artists\n\t\t\t\t\t\t({$string_keys})\n\t\t\t\t\t\tVALUES\n\t\t\t\t\t\t({$string_vals})";
                $results = $wpdb->query($sql);
                $wpdb->hide_errors();
                $artist = get_artist_by_slug($_POST['artist_slug']);
                $message = 'added';
                break;
            case 'delete':
                $del_artist = get_artistname_by_id($_REQUEST['artist']);
                delete_artist($_REQUEST['artist']);
                $message = "{$del_artist} deleted";
                $index = 1;
                break;
        }
        echo '<div id="message" class="updated fade"><p><strong>Artist ' . $message . '.</strong></p></div>';
    }
    if (!$index) {
        if (isset($_REQUEST['artist'])) {
            $artist = get_artist($_REQUEST['artist']);
        }
        ?>
	<div class="wrap">
			<div id="icon-options-general" class="icon32"><br /></div>
		<?php 
        if ($_REQUEST['page'] == 'add_artist') {
            ?>
			<h2>Add Artist</h2>
			<form action="<?php 
            echo str_replace('%7E', '~', $_SERVER['REQUEST_URI']);
            ?>
&ribcage_action=add" method="post" id="ribcage_edit_artist" name="edit_artist">
			<?php 
            wp_nonce_field('add_artist');
            ?>
		<?php 
        }
        ?>
		<?php 
        if (isset($_REQUEST['artist'])) {
            ?>
			<h2>Managing <?php 
            artist_name();
            ?>
</h2>
			<form action="<?php 
            echo str_replace('%7E', '~', $_SERVER['REQUEST_URI']);
            ?>
&ribcage_action=edit" method="post" id="ribcage_edit_artist" name="edit_artist">
			<?php 
            wp_nonce_field('manage_artists');
            ?>
		<?php 
        }
        ?>
					<table class="form-table">             
						<tr valign="top">
							<th scope="row"><label for="artist_name">Name</label></th> 
							<td>
								<input type="text" value="<?php 
        artist_name();
        ?>
" name="artist_name" id="artist_name" class="regular-text"/>												
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Sort Name</th> 
							<td>
								<input type="text" value="<?php 
        artist_name_sort();
        ?>
" name="artist_name_sort" id="artist_name_sort" class="regular-text" />
								<span class="description">The name of the artist to be alphabetized. For example, 'Butterfly, The'.</span>
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Artist Slug</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_slug();
        ?>
" name="artist_slug" id="artist_slug" /><span class="description">The URL you want for the artist - for example <a href="<?php 
        echo home_url();
        ?>
/artists/artist_slug</span>
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Signup Date</th> 
							<td>
								<input type="text" style="width:100px;" class="regular-text code" value="<?php 
        echo $artist['artist_signed'];
        ?>
" name="artist_signed" id="artist_signed" maxlength="50" /><span class="description">The date the artist signed for your label</span>
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Creative Commons license</th> 
							<td>
								<?php 
        echo ribcage_cc_dropdown($artist_license_val);
        ?>
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Artist's Music Brainz ID</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_musicbrainz();
        ?>
" name="artist_mbid" id="artist_mbid" maxlength="50" />
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Website URL</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_website_link();
        ?>
" name="artist_link_website" id="artist_link_website" maxlength="200" />
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">MySpace URL</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_myspace_link();
        ?>
" name="artist_link_myspace" id="artist_link_myspace" maxlength="200" />
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Facebook URL</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_facebook_link();
        ?>
" name="artist_link_facebook" id="artist_link_facebook" maxlength="200" />
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Artist Biography</th> 
							<td>
								<textarea rows="5" cols="50" name="artist_bio" id="artist_bio" class="regular-text"><?php 
        echo $artist['artist_bio'];
        ?>
</textarea>
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Short One Paragraph Description of Artist</th> 
							<td>
								<textarea rows="5" cols="50" name="artist_blurb_tiny" id="artist_blurb_tiny" class="regular-text"><?php 
        echo $artist['artist_blurb_tiny'];
        ?>
</textarea>
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Artist Picture 1</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_picture_1();
        ?>
" name="artist_picture_1" id="artist_picture_1" maxlength="200" />
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Artist Picture 2</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_picture_2();
        ?>
" name="artist_picture_2" id="artist_picture_2" maxlength="200" />
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Artist Picture 3</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        artist_picture_3();
        ?>
" name="artist_picture_3" id="artist_picture_3" maxlength="200" />
							</td> 
						</tr>
						<tr valign="top">
							<th scope="row">Artist Picture HQ Zipfile URL</th> 
							<td>
								<input type="text" style="width:320px;" class="regular-text code" value="<?php 
        echo $artist_picture_zip_val;
        ?>
" name="artist_picture_zip" id="artist_picture_zip" maxlength="200" />
							</td> 
						</tr>
					</table>
					<p class="submit">
						<input type="submit" name="Submit" class="button-primary" value="Save Changes" />
					</p>
			</form>
	</div>
<?php 
    } else {
        ?>
	<?php 
        $artists = list_artists_blurb();
        $alt = 0;
        ?>
	<div class="wrap">
		<div id="icon-plugins" class="icon32"><br /></div>
		<h2>Manage Artists</h2>
			<form action="<?php 
        echo str_replace('%7E', '~', $_SERVER['REQUEST_URI']);
        ?>
" method="post" id="ribcage_manage_artists" name="manage_artists"> 
				<table class="widefat post fixed" cellspacing="0">
						<thead>
						<tr>
						<?php 
        print_column_headers('ribcage-manage-artist');
        ?>
			
						</tr>
						</thead>
						<tfoot>
						<tr>			
						<?php 
        print_column_headers('ribcage-manage-artist', FALSE);
        ?>
	
						</tr>
						</tfoot>            
						<tbody>
							<?php 
        while (have_artists()) {
            the_artist();
            ?>
							<?php 
            $manage_link = wp_nonce_url('?page=ribcage&artist=' . artist_id(false), 'manage_artists');
            $delete_link = wp_nonce_url('?page=ribcage&artist=' . artist_id(false) . '&ribcage_action=delete', 'manage_artists');
            ?>
							<?php 
            echo $alt % 2 ? '<tr valign="top" class="">' : '<tr valign="top" class="alternate">';
            ++$alt;
            ?>
		
							<th scope="row" class="check-column"><input type="checkbox" name="artistcheck[]" value="2" /></th>
							<td class="column-name">
								<strong><a class="row-title" href="?page=manage_artists&artist=<?php 
            artist_id();
            ?>
" title="<?php 
            artist_name();
            ?>
" ><?php 
            artist_name();
            ?>
</strong></a><br /><div class="row-actions"><span class='edit'><a href="<?php 
            echo $manage_link;
            ?>
">Edit</a> | </span><span class='delete'><a class='submitdelete' href='<?php 
            echo $delete_link;
            ?>
' onclick="if ( confirm('You are about to delete \'<?php 
            artist_name();
            ?>
\'\n  \'Cancel\' to stop, \'OK\' to delete.') ) { return true;}return false;">Delete</a></span></div></td>
							</tr>
							<?php 
        }
        ?>
						</tbody>
					</table>
			</form>
	</div>
	<?php 
    }
}
Exemple #4
0
    /**
     * Displays recent releases widget.
     */
    public function widget($args, $instance)
    {
        global $releases, $release, $artist;
        extract($args);
        $releases = list_recent_releases_blurb('16');
        $artists = list_artists_blurb();
        ?>
	        <?php 
        echo $before_widget;
        ?>
	            <?php 
        echo $before_title . 'Recent Releases' . $after_title;
        ?>
				<div class="textwidget" align="left">
	            <?php 
        while (have_releases()) {
            the_release();
            ?>
	
				<?php 
            $artist = get_artist($release['release_artist']);
            ?>
				<div class="artist_slug">
					<a class="slug" href="<?php 
            echo home_url();
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
"><img src="<?php 
            release_cover_tiny();
            ?>
" alt="<?php 
            release_title();
            ?>
" /></a>
					<div class="artist_slug_info">
						<ul class="artist_slug_main">
							<li class="artist"><a href="<?php 
            echo home_url();
            ?>
/artists/<?php 
            artist_slug();
            ?>
/"><?php 
            artist_name();
            ?>
</a><h2><a href="<?php 
            echo home_url();
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
"><?php 
            release_title();
            ?>
</a></h2></li>
						</ul>
						<ul class="artist_slug_meta">
							<li class="more"><a href="<?php 
            echo home_url();
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
">More</a></li>
							<li class="listen"><a href="javascript:popUp('<?php 
            release_player_link();
            ?>
')">Listen</a></li>
						<?php 
            if (release_physical()) {
                ?>
							<li class="download"><a href="<?php 
                echo home_url();
                ?>
/download/<?php 
                release_slug();
                ?>
/">Free Download</a></li>
							<li class="last buy"><a href="<?php 
                echo home_url();
                ?>
/buy/<?php 
                release_product_id();
                ?>
">Buy</a></li>
						<?php 
            } else {
                ?>
							<li class="last download"><a href="<?php 
                echo home_url();
                ?>
/download/<?php 
                release_slug();
                ?>
/">Free Download</a></li>
						<?php 
            }
            ?>
						</ul>
					</div> <!-- end div.artist_slug_info -->
					<div class="clear"></div>
				</div> <!-- end div.artist_slug -->
				<?php 
        }
        ?>
				<div class="clear"></div>
				<p class="more_link"><a href="<?php 
        echo home_url();
        ?>
/releases/">more releases &rsaquo;</a></p>
			</div>
	        <?php 
        echo $after_widget;
        ?>
	<?php 
    }
Exemple #5
0
/**
 * Outputs a number of recent albums in an unordered list of various kinds.
 *
 * @author Alex Andrews <*****@*****.**>
 * @param int $amount The number of recent albums you want to output.
 * @param string $mode Different formats: 'list' simple list, 'covers' list of covers, similar to the sidebar widget.
 * @param bool $nav_bar Displays a navigation bar for each release.
 * @param string $css An optional css marker to put in the style of each element.
 */
function ribcage_albums($amount = 5, $mode = 'list', $nav_bar = TRUE, $css = NULL)
{
    global $releases, $release;
    global $artist;
    if ($releases == NULL) {
        $releases = list_recent_releases_blurb($amount);
    }
    ?>
	<ul class="ribcage albums<?php 
    if (isset($css)) {
        print " {$css}";
    }
    ?>
">
	<?php 
    while (have_releases()) {
        the_release();
        ?>
	<?php 
        $artist = get_artist($release['release_artist']);
        ?>
		<li class="ribcage albums<?php 
        if (isset($css)) {
            print " {$css}";
        }
        ?>
 <?php 
        release_slug();
        ?>
">
			<ul class="ribcage albums<?php 
        if (isset($css)) {
            print " {$css}";
        }
        ?>
 <?php 
        release_slug();
        ?>
">
				<?php 
        if ($mode == 'covers') {
            ?>
				<li class="album_cover"><a class="ribcage albums album_cover" href="<a href="<?php 
            echo home_url();
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
"><img src="<?php 
            release_cover_tiny();
            ?>
" alt="<?php 
            release_title();
            ?>
" /></a></li>
				<?php 
        }
        ?>
				<li class="artist"><a href="<?php 
        echo home_url();
        ?>
/artists/<?php 
        artist_slug();
        ?>
/"><?php 
        artist_name();
        ?>
</a></li>
				<li class="title"><a href="<?php 
        echo home_url();
        ?>
/artists/<?php 
        artist_slug();
        ?>
/<?php 
        release_slug();
        ?>
"><?php 
        release_title();
        ?>
</a></li>
				<?php 
        if ($nav_bar) {
            ?>
				<li class="nav">
					<ul class="nav">
						<li class="more"><a href="<?php 
            echo home_url();
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
">More</a></li>
						<li class="listen"><a href="javascript:popUp('<?php 
            release_player_link();
            ?>
')">Listen</a></li>
						<?php 
            if (release_physical()) {
                ?>
						<li class="download"><a href="<?php 
                echo home_url();
                ?>
/download/<?php 
                release_slug();
                ?>
/">Download</a></li>
							<li class="last buy"><a href="<?php 
                echo home_url();
                ?>
/buy/<?php 
                release_product_id();
                ?>
">Buy</a></li>
						<?php 
            } else {
                ?>
						<li class="last download"><a href="<?php 
                echo home_url();
                ?>
/download/<?php 
                release_slug();
                ?>
/">Download</a></li>
						<?php 
            }
            ?>
					</ul>
				</li>
				<?php 
        }
        ?>
			</ul>
		</li>
	<?php 
    }
    ?>
	</ul>
	<?php 
}
Exemple #6
0
">Facebook</a></li><?php 
}
?>
			<li><a href="<?php 
artist_lastfm_link();
?>
">Last.fm</a></li>
			<li><a href="<?php 
artist_musicbrainz_link();
?>
">Musicbrainz</a></li>
		</ul>
	</div>

	<?php 
$slug = artist_slug(false);
query_posts("tag={$slug}");
?>
	<?php 
if (have_posts()) {
    ?>
		<div class="mod">
		<h3>Tagged Posts</h3>
		<ul>

		<?php 
    while (have_posts()) {
        the_post();
        ?>
			<li><a href="<?php 
        the_permalink();
Exemple #7
0
    /**
     * Adds a widget for recent releases, the quantity of which is defined by an option.
     *
     * @author Alexander Andrews
     **/
    function recent_releases($args)
    {
        global $releases, $release, $artist;
        extract($args);
        $releases = list_recent_releases_blurb('5');
        $artists = list_artists_blurb();
        ?>
	        <?php 
        echo $before_widget;
        ?>
	            <?php 
        echo $before_title . 'Recent Releases' . $after_title;
        ?>
				<div class="textwidget" align="left">
	            <?php 
        while (have_releases()) {
            the_release();
            ?>
	
				<?php 
            $artist = get_artist($release['release_artist']);
            ?>
				<div style="margin-bottom:25px;font-size:12px;"><a href="<?php 
            echo get_option('siteurl');
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
"><img src="<?php 
            release_cover_tiny();
            ?>
" align="right" style="margin-left: 10px; border: 1px solid #000;" height="65px" width="65px" alt="<?php 
            release_title();
            ?>
" /></a>		
				<a href="<?php 
            echo get_option('siteurl');
            ?>
/artists/<?php 
            artist_slug();
            ?>
/" style="font-size:12px;"><?php 
            artist_name();
            ?>
</a> - <a href="<?php 
            echo get_option('siteurl');
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
" style="font-size:12px;"><?php 
            release_title();
            ?>
</a><br />
				<div style="font-size:9px;">
				<a href="<?php 
            echo get_option('siteurl');
            ?>
/artists/<?php 
            artist_slug();
            ?>
/<?php 
            release_slug();
            ?>
" style="font-size:11px;color:black;">More</a> - <a href="javascript:popUp('<?php 
            release_player_link();
            ?>
')" style="font-size:11px;color:black;">Listen</a> - <a href="<?php 
            echo get_option('siteurl');
            ?>
/download/<?php 
            release_slug();
            ?>
/" style="font-size:11px;color:black;">Download</a><?php 
            if (release_physical()) {
                ?>
 - <a href="<?php 
                get_option('siteurl');
                ?>
/buy/<?php 
                release_product_id();
                ?>
" style="font-size:11px;color:black;">Buy</a><?php 
            }
            ?>
				</div>
				</div>
				<?php 
        }
        ?>
				<p><a href="<?php 
        echo get_option('siteurl');
        ?>
/releases/">More Releases...</a></p>
			</div>
	        <?php 
        echo $after_widget;
        ?>
	<?php 
    }