"; print_r($_REQUEST); echo "
";
//exit;	
	if (isset($_REQUEST['media_tags_action']))
		$media_tags_action = $_REQUEST['media_tags_action'];
	else
		$media_tags_action = "";

	if (isset($_REQUEST['media_tags_input']))
		$media_tags_input = $_REQUEST['media_tags_input'];
	else
		$media_tags_input = "";

	if ((isset($_REQUEST['select_media_tags'])) && (strlen($_REQUEST['select_media_tags'])))
		$select_media_tags = explode(",",$_REQUEST['select_media_tags']);
	else
		$select_media_tags = array();
		
	if ((isset($_REQUEST['select_media_items'])) && (strlen($_REQUEST['select_media_items'])))
		$select_media_items = explode(",", $_REQUEST['select_media_items']);
	else
		$select_media_items = array();
	
	
	// First process any new Tags entered via the input field...
	if ((strlen($_REQUEST['media_tags_input'])) && ($media_tags_action == "assign"))
	{
		$tags_tmp_array = split(',', $_REQUEST['media_tags_input']);
		if ($tags_tmp_array)
		{
			foreach($tags_tmp_array as $idx => $tag_val)
			{
				$tag_slug = sanitize_title_with_dashes($tag_val);

				if ( ! ($id = term_exists( $tag_slug, MEDIA_TAGS_TAXONOMY ) ) )
				{
					$inserted_term_id = wp_insert_term($tag_val, MEDIA_TAGS_TAXONOMY, array('slug' => $tag_slug));
					if (isset($inserted_term_id['term_id']))
						$select_media_tags[] = $inserted_term_id['term_id'];
				}
				else
					$select_media_tags[] = $id['term_id'];
			}
		}
	}
		
	if ( (strlen($media_tags_action)) && (count($select_media_items)) && (count($select_media_tags)) )
	{
		//echo "media_tags_action=[".$media_tags_action."]
\n"; //echo "select_media_tags
"; print_r($select_media_tags); echo "
\n"; //echo "select_media_items
"; print_r($select_media_items); echo "
\n"; $selected_media_tag_terms = array(); //$selected_media_tag_terms = get_terms(MEDIA_TAGS_TAXONOMY, array('include' => $select_media_tags)); foreach($select_media_tags as $media_tag_id) { $selected_media_tag_terms[] = get_term($media_tag_id, MEDIA_TAGS_TAXONOMY); } //echo "selected_media_tag_terms
"; print_r($selected_media_tag_terms); echo "
\n"; if ($media_tags_action == "assign") { foreach($select_media_items as $select_media_item_id) { $media_tag_slugs = array(); $media_item_terms_current = wp_get_object_terms($select_media_item_id, MEDIA_TAGS_TAXONOMY); if (!$media_item_terms_current) { if ($selected_media_tag_terms) { foreach($selected_media_tag_terms as $selected_media_tag_term) $media_tag_slugs[$selected_media_tag_term->slug] = $selected_media_tag_term->slug; } } else { // Here we need to combine the media item's already defined media-tag and the new media-tags foreach($media_item_terms_current as $idx => $current_term) $media_tag_slugs[$current_term->slug] = $current_term->slug; foreach($selected_media_tag_terms as $selected_media_tag_term) $media_tag_slugs[$selected_media_tag_term->slug] = $selected_media_tag_term->slug; } if (count($media_tag_slugs)) { // If the Media Item does not have any assigned Media-Tag we simple assign the selected Media-Tags wp_set_object_terms($select_media_item_id, $media_tag_slugs, MEDIA_TAGS_TAXONOMY); } } } else if ($media_tags_action == "remove") { foreach($select_media_items as $select_media_item_id) { $media_tag_slugs = array(); $media_item_terms_current = wp_get_object_terms($select_media_item_id, MEDIA_TAGS_TAXONOMY); if ($media_item_terms_current) { foreach($selected_media_tag_terms as $selected_media_tag_term) { foreach($media_item_terms_current as $current_idx => $current_term) { if ($current_term->term_id == $selected_media_tag_term->term_id) unset($media_item_terms_current[$current_idx]); } } foreach($media_item_terms_current as $current_idx => $current_term) $media_tag_slugs[$current_term->slug] = $current_term->slug; if (count($media_tag_slugs)) wp_set_object_terms($select_media_item_id, $media_tag_slugs, MEDIA_TAGS_TAXONOMY); else wp_set_object_terms($select_media_item_id, $media_tag_slugs, MEDIA_TAGS_TAXONOMY); } } } } die(); } function mediatags_bulk_admin_panel() { ?>