Example #1
0
    public function metabox($post)
    {
        $contributors = get_the_terms($post->ID, self::$taxonomy_name);
        ?>
		<div id="add_contributors" class="tagsdiv">
			<p>
				<input type="text" class="newtag" id="add_contributors_input">
				<input type="button" class="button tagadd" id="add_contributors_submit" value="Add">
			</p>
		</div>
		<div id="contributors" class="tagchecklist">
			<div class="nojs-tags hide-if-js">
				<p><?php 
        echo __('Add or remove contributors', 'podlove');
        ?>
</p>
				<textarea name="tax_input[<?php 
        echo self::$taxonomy_name;
        ?>
]" rows="3" cols="20" class="the-contributors" id="tax-input-podlove-contributors"><?php 
        if ($contributors && count($contributors)) {
            echo implode(',', array_map(function ($c) {
                return $c->slug;
            }, $contributors));
        }
        ?>
</textarea>
			</div>
			<?php 
        if ($contributors && count($contributors)) {
            ?>
				<?php 
            foreach ($contributors as $contributor) {
                ?>
					<?php 
                $settings = self::get_additional_settings($contributor->term_id);
                ?>
					<div class="contributor" data-term-slug="<?php 
                echo $contributor->slug;
                ?>
" data-term-id="<?php 
                echo $contributor->term_id;
                ?>
">
						<span>
							<a href="#" class="ntdelbutton" title="<?php 
                echo __('remove', 'podlove');
                ?>
">x</a>
							<div class="avatar">
								<?php 
                if (isset($settings['contributor_email'])) {
                    ?>
									<?php 
                    echo get_avatar($settings['contributor_email'], 24);
                    ?>
								<?php 
                } else {
                    ?>
									<?php 
                    echo get_avatar(null, 24);
                    ?>
								<?php 
                }
                ?>
							</div>
							<div class="name">
								<a href="<?php 
                echo get_edit_term_link($contributor->term_id, self::$taxonomy_name, 'podcast');
                ?>
" target="_blank" title="<?php 
                echo __('edit', 'podlove');
                ?>
">
									<?php 
                echo $contributor->name;
                ?>
								</a>
							</div>
						</span>
					</div>
				<?php 
            }
            ?>
			<?php 
        }
        ?>
		</div>
		<script type="text/javascript">
		<?php 
        $people = get_terms(self::$taxonomy_name, array('hide_empty' => false));
        $people = array_map(function ($person) {
            $settings = \Podlove\Modules\Contributors\Contributors::get_additional_settings($person->term_id);
            $email = isset($settings['contributor_email']) ? $settings['contributor_email'] : null;
            return array('value' => $person->slug, 'label' => $person->name, 'id' => $person->term_id, 'avatar' => \Podlove\Modules\Contributors\Contributors::get_gravatar_url($email, 24));
        }, $people);
        if (!$people) {
            $people = array();
        }
        ?>

		var PODLOVE = PODLOVE || {};
		PODLOVE.people = <?php 
        echo json_encode($people);
        ?>
;
		</script>
		<?php 
    }