<?php
add_action("admin_init", "posts_init");
function posts_init(){
	add_meta_box("post_options", theme_name ." - Post Options", "post_options", "post", "normal", "high");
	add_meta_box("page_options", theme_name ." - Page Options", "page_options", "page", "normal", "high");
}

function post_options(){
	global $post ;
	$get_meta = get_post_custom($post->ID);
	
	if(isset($get_meta["magnews_sidebar_pos"][0]))
		$magnews_sidebar_pos = $get_meta["magnews_sidebar_pos"][0];
		
	if(isset( $get_meta["magnews_review_criteria"][0] ))	
	$magnews_review_criteria = unserialize($get_meta["magnews_review_criteria"][0]);
	
	wp_enqueue_script( 'magnews-admin-slider' );  

?>
		<div class="magnewspanel-item">
			<input type="hidden" name="magnews_hidden_flag" value="true" />
			
			<h3>Review Post Options</h3>
			<?php	

			magnews_post_options(				
				array(	"name" => "Review Box Position",
						"id" => "magnews_review_position",
						"type" => "select",
						"options" => array( "" => "Disable" ,
											"top" => "Top of the post" ,
											"bottom" => "Bottom of the post",
											"both" => "Top and Bottom of the post",
											"custom" => "Custom position")));
			?>
			<div id="reviews-options">
			<?php
			magnews_post_options(				
				array(	"name" => "Review Style",
						"id" => "magnews_review_style",
						"type" => "select",
						"options" => array( "stars" => "Stars" ,
											"percentage" => "Percentage",
											"points" => "Points")));
											
			magnews_post_options(				
				array(	"name" => "Review Summary",
						"id" => "magnews_review_summary",
						"type" => "textarea"));

			magnews_post_options(				
				array(	"name" => "Text appears under the total score",
						"id" => "magnews_review_total",
						"type" => "text"));

			?>
			<?php  for($i=1 ; $i<=10 ; $i++ ){ ?>

			<div class="option-item review-item">				
				<span class="label">Review Criteria <?php echo $i ?></span>
				<input name="magnews_review_criteria[<?php echo $i ?>][name]" type="text" value="<?php if( !empty($magnews_review_criteria[$i]['name'] ) ) echo $magnews_review_criteria[$i]['name'] ?>" />
				<div class="clear"></div>
				<span class="label">Criteria Score <?php echo $i ?></span>
				<div id="criteria<?php echo $i ?>-slider"></div>
				<input type="text" id="criteria<?php echo $i ?>" value="<?php if( !empty($magnews_review_criteria[$i]['score']) ) echo $magnews_review_criteria[$i]['score']; else echo 0; ?>" name="magnews_review_criteria[<?php echo $i ?>][score]" style="width:50px; opacity: 0.7;" />
				<script>
				  jQuery(document).ready(function() {
					jQuery("#criteria<?php echo $i ?>-slider").slider({
						range: "min",
						min: 0,
						max: 100,
						value: <?php if( !empty($magnews_review_criteria[$i]['score']) ) echo $magnews_review_criteria[$i]['score']; else echo 0; ?>,
						slide: function(event, ui) {
							jQuery('#criteria<?php echo $i ?>').attr('value', ui.value );
						}
						});
					});
				</script>
			</div>	

				<?php
			}
			?>
			</div>
		</div>
		
		<div class="magnewspanel-item">
			<h3>General Options</h3>
			<?php	

			magnews_post_options(				
				array(	"name" => "Hide Post Meta",
						"id" => "magnews_hide_meta",
						"type" => "select",
						"options" => array( "" => "" ,
											"yes" => "Yes" ,
											"no" => "No")));

			magnews_post_options(				
				array(	"name" => "Hide Author Information",
						"id" => "magnews_hide_author",
						"type" => "select",
						"options" => array( "" => "" ,
											"yes" => "Yes" ,
											"no" => "No")));
											
			magnews_post_options(				
				array(	"name" => "Hide Share Buttons",
						"id" => "magnews_hide_share",
						"type" => "select",
						"options" => array( "" => "" ,
											"yes" => "Yes" ,
											"no" => "No")));
											
			magnews_post_options(				
				array(	"name" => "Hide Related Posts",
						"id" => "magnews_hide_related",
						"type" => "select",
						"options" => array( "" => "" ,
											"yes" => "Yes" ,
											"no" => "No")));
			?>
		</div>
		
		<div class="magnewspanel-item">
			<h3>Sidebar Options</h3>
			<div class="option-item">
				<?php
					$checked = 'checked="checked"';
				?>
				<ul id="sidebar-position-options" class="magnews-options sidebar-position-options2">
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="default" <?php if( ( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'default' ) || empty($magnews_sidebar_pos) ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-default.png" /></a>
					</li>						<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="right" <?php if( ( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'right' ) ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-right.png" /></a>
					</li>
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="left" <?php if( ( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'left') ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-left.png" /></a>
					</li>
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="nright" <?php if( ( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'nright') ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-1.png" /></a>
					</li>
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="nleft" <?php if( ( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'nleft') ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-2.png" /></a>
					</li>
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="full" <?php if( ( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'full') ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-no.png" /></a>
					</li>
				</ul>
			</div>
			<?php
			$sidebars = magnews_get_option( 'sidebars' ) ;
			$new_sidebars = array(''=> 'Default');
			if($sidebars){
				foreach ($sidebars as $sidebar) {
					$new_sidebars[$sidebar] = $sidebar;
				}
			}
					
			magnews_post_options(				
				array(	"name" => "Choose Sidebar",
						"id" => "magnews_sidebar_post",
						"type" => "select",
						"options" => $new_sidebars ));
			
			if(magnews_get_option( 'columns_num' ) != '2c'){			
				magnews_post_options(				
					array(	"name" => "Choose Narrow Sidebar",
							"id" => "magnews_sidebar_narrow_post",
							"type" => "select",
							"options" => $new_sidebars ));
			}
			?>
		</div>
		
		
		<div class="magnewspanel-item">
			<h3>Post Head Options</h3>
			<?php	

			magnews_post_options(				
				array(	"name" => "Display",
						"id" => "magnews_post_head",
						"type" => "select",
						"options" => array(
							''=> 'Default',
							'none'=> 'None',
							'video'=> 'Video',
							'audio'=> 'Audio - Self Hosted',
							'soundcloud'=> 'Audio - SoundCloud',
							'slider'=> 'Slider',
							'map'=> 'Google Map',
							'thumb'=> 'Featured Image',
							'lightbox'=> 'Featured Image + lightbox'
						)));


			magnews_post_options(				
				array(	"name" => "Embed Code",
						"id" => "magnews_embed_code",
						"type" => "textarea"));

			magnews_post_options(				
				array(	"name" => "Youtube / Vimeo / Dailymotion Video Url",
						"id" => "magnews_video_url",
						"type" => "text"));

			magnews_post_options(				
				array(	"name" => "SoundCloud URL",
						"id" => "magnews_audio_soundcloud",
						"type" => "text"));
						
			magnews_post_options(				
				array(	"name" => "Auto Play",
						"id" => "magnews_audio_soundcloud_play",
						"type" => "checkbox"));
						
			magnews_post_options(				
				array(	"name" => "Mp3 file Url <strong><small>(required)</small></strong>",
						"id" => "magnews_audio_mp3",
						"type" => "text"));

			magnews_post_options(				
				array(	"name" => "M4A file Url",
						"id" => "magnews_audio_m4a",
						"type" => "text"));
						
			magnews_post_options(				
				array(	"name" => "OGA file Url <strong><small>(required)</small></strong>",
						"id" => "magnews_audio_oga",
						"type" => "text"));	
						
			global $post;
			$orig_post = $post;
			
			$sliders = array();
			$custom_slider = new WP_Query( array( 'post_type' => 'magnews_slider', 'posts_per_page' => -1 ) );
			while ( $custom_slider->have_posts() ) {
				$custom_slider->the_post();
				$sliders[get_the_ID()] = get_the_title();
			}
			$post = $orig_post;
			wp_reset_query();
	
			magnews_post_options(				
				array(	"name" => "Custom Slider",
						"id" => "magnews_post_slider",
						"type" => "select",
						"options" => $sliders ));

			magnews_post_options(				
				array(	"name" => "Google Map Url",
						"id" => "magnews_googlemap_url",
						"type" => "text"));

			?>
		</div>

		<div class="magnewspanel-item">
			<h3>Banners Options</h3>
			<?php	
			magnews_post_options(				
				array(	"name" => "Hide Above Banner",
						"id" => "magnews_hide_above",
						"type" => "checkbox"));

			magnews_post_options(				
				array(	"name" => "Custom Above Banner",
						"id" => "magnews_banner_above",
						"type" => "textarea"));

			magnews_post_options(				
				array(	"name" => "Hide Below Banner",
						"id" => "magnews_hide_below",
						"type" => "checkbox"));

			magnews_post_options(				
				array(	"name" => "Custom Below Banner",
						"id" => "magnews_banner_below",
						"type" => "textarea"));
			?>
		</div>
  <?php
}

/*********************************************************************************************/

function page_options(){
	global $post ;
	$get_meta = get_post_custom($post->ID);
	if(isset($get_meta["magnews_sidebar_pos"][0]))
		$magnews_sidebar_pos = $get_meta["magnews_sidebar_pos"][0];
	
	$categories_obj = get_categories();
	$categories = array();
	$categories = array(''=> 'All Categories');
	foreach ($categories_obj as $pn_cat) {
		$categories[$pn_cat->cat_ID] = $pn_cat->cat_name;
	}
	
?>
		<input type="hidden" name="magnews_hidden_flag" value="true" />		
		
		<div class="magnewspanel-item">
			<h3>Sidebar Options</h3>
			<div class="option-item">
				<?php
					$checked = 'checked="checked"';
				?>
				<ul id="sidebar-position-options" class="magnews-options">
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="default" <?php if(isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'default' || !isset($magnews_sidebar_pos) ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-default.png" /></a>
					</li>						<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="right" <?php if( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'right' ) echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-right.png" /></a>
					</li>
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="left" <?php if( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'left') echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-left.png" /></a>
					</li>
					<li>
						<input id="magnews_sidebar_pos"  name="magnews_sidebar_pos" type="radio" value="full" <?php if( isset($magnews_sidebar_pos) && $magnews_sidebar_pos == 'full') echo $checked; ?> />
						<a class="checkbox-select" href="#"><img src="<?php echo get_template_directory_uri(); ?>/panel/images/sidebar-no.png" /></a>
					</li>
				</ul>
			</div>
			<?php
			$sidebars = magnews_get_option( 'sidebars' ) ;
			$new_sidebars = array(''=> 'Default');
			if($sidebars){
				foreach ($sidebars as $sidebar) {
					$new_sidebars[$sidebar] = $sidebar;
				}
			}
					
			magnews_post_options(				
				array(	"name" => "Choose Sidebar",
						"id" => "magnews_sidebar_post",
						"type" => "select",
						"options" => $new_sidebars ));
				
			if(magnews_get_option( 'columns_num' ) != '2c'){
				magnews_post_options(				
					array(	"name" => "Choose Narrow Sidebar",
							"id" => "magnews_sidebar_narrow_post",
							"type" => "select",
							"options" => $new_sidebars ));
			}
			?>
		</div>
		
		<div class="magnewspanel-item">
			<h3>Post Head Options</h3>
			<?php	

			magnews_post_options(				
				array(	"name" => "Display",
						"id" => "magnews_post_head",
						"type" => "select",
						"options" => array(
							''=> 'Default',
							'none'=> 'None',
							'video'=> 'Video',
							'audio'=> 'Audio - Self Hosted',
							'soundcloud'=> 'Audio - SoundCloud',
							'slider'=> 'Slider',
							'map'=> 'Google Map',
							'thumb'=> 'Featured Image',
							'lightbox'=> 'Featured Image + lightbox'
						)));


			magnews_post_options(				
				array(	"name" => "Embed Code",
						"id" => "magnews_embed_code",
						"type" => "textarea"));

			magnews_post_options(				
				array(	"name" => "Youtube / Vimeo Video Url",
						"id" => "magnews_video_url",
						"type" => "text"));
						
			magnews_post_options(				
				array(	"name" => "SoundCloud URL",
						"id" => "magnews_audio_soundcloud",
						"type" => "text"));
						
			magnews_post_options(				
				array(	"name" => "Auto Play",
						"id" => "magnews_audio_soundcloud_play",
						"type" => "checkbox"));
						
			magnews_post_options(				
				array(	"name" => "Mp3 file Url <strong><small>(required)</small></strong>",
						"id" => "magnews_audio_mp3",
						"type" => "text"));

			magnews_post_options(				
				array(	"name" => "M4A file Url",
						"id" => "magnews_audio_m4a",
						"type" => "text"));
					
			magnews_post_options(				
				array(	"name" => "OGA file Url <strong><small>(required)</small></strong>",
						"id" => "magnews_audio_oga",
						"type" => "text"));			

						
			global $post;
			$orig_post = $post;
			
			$sliders = array();
			$custom_slider = new WP_Query( array( 'post_type' => 'magnews_slider', 'posts_per_page' => -1 ) );
			while ( $custom_slider->have_posts() ) {
				$custom_slider->the_post();
				$sliders[get_the_ID()] = get_the_title();
			}
			$post = $orig_post;
			wp_reset_query();
	
			magnews_post_options(				
				array(	"name" => "Custom Slider",
						"id" => "magnews_post_slider",
						"type" => "select",
						"options" => $sliders ));
						
						
			magnews_post_options(				
				array(	"name" => "Google Map Url",
						"id" => "magnews_googlemap_url",
						"type" => "text"));
			?>
		</div>
		
		<div class="magnewspanel-item">
			<h3>Banners Options</h3>
			<?php	
			magnews_post_options(				
				array(	"name" => "Hide Above Banner",
						"id" => "magnews_hide_above",
						"type" => "checkbox"));

			magnews_post_options(				
				array(	"name" => "Custom Above Banner",
						"id" => "magnews_banner_above",
						"type" => "textarea"));

			magnews_post_options(				
				array(	"name" => "Hide Below Banner",
						"id" => "magnews_hide_below",
						"type" => "checkbox"));

			magnews_post_options(				
				array(	"name" => "Custom Below Banner",
						"id" => "magnews_banner_below",
						"type" => "textarea"));
			?>
		</div>

		
		<div class="magnewspanel-item">
			<h3>Blog List template Options</h3>
			<?php	
			magnews_post_options(				
				array(	"name" => "Categories",
						"id" => "magnews_blog_cats",
						"type" => "select",
						"options" => $categories ));
			?>
		</div>
  <?php
}

add_action('save_post', 'save_post');
function save_post( $post_id ){
	global $post;
	
	if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE )
		return $post_id;
	
    if (isset($_POST['magnews_hidden_flag'])) {
	
		$custom_meta_fields = array(
			'magnews_blog_cats',
			'magnews_hide_meta',
			'magnews_hide_author',
			'magnews_hide_share',
			'magnews_hide_related',
			'magnews_sidebar_pos',
			'magnews_sidebar_post',
			'magnews_sidebar_narrow_post',
			'magnews_post_head',
			'magnews_post_slider',
			'magnews_googlemap_url',
			'magnews_video_url',
			'magnews_embed_code',
			'magnews_audio_m4a',
			'magnews_audio_mp3',
			'magnews_audio_oga',
			'magnews_audio_soundcloud',
			'magnews_audio_soundcloud_play',
			'magnews_hide_above',
			'magnews_banner_above',
			'magnews_hide_below',
			'magnews_banner_below',
			'magnews_review_position',
			'magnews_review_style',
			'magnews_review_summary',
			'magnews_review_total');
			
		foreach( $custom_meta_fields as $custom_meta_field ){
			if(isset($_POST[$custom_meta_field]) )
				update_post_meta($post_id, $custom_meta_field, htmlspecialchars(stripslashes($_POST[$custom_meta_field])) );
			else
				delete_post_meta($post_id, $custom_meta_field);
		}
		
		if( isset($_POST['magnews_review_criteria']) )
			update_post_meta($post_id, 'magnews_review_criteria', $_POST['magnews_review_criteria']);
		
		$get_meta = get_post_custom($post_id);

		$total_counter = $score = 0;
		if( isset( $get_meta['magnews_review_criteria'][0] ))
		$criterias = unserialize( $get_meta['magnews_review_criteria'][0] );
		
		if( !empty($criterias) ){
			foreach( $criterias as $criteria){ 
				if( $criteria['name'] && $criteria['score'] && is_numeric( $criteria['score'] )){
					if( $criteria['score'] > 100 ) $criteria['score'] = 100;
					if( $criteria['score'] < 0 ) $criteria['score'] = 1;
						
				$score += $criteria['score'];
				$total_counter ++;
				}
			}
			if( !empty( $score ) && !empty( $total_counter ) )
				$total_score =  $score / $total_counter ;
			
			update_post_meta($post_id, 'magnews_review_score', $total_score);
		}
	}
}




/*********************************************************/

function magnews_post_options($value){
	global $post;
?>

	<div class="option-item" id="<?php echo $value['id'] ?>-item">
		<span class="label"><?php  echo $value['name']; ?></span>
	<?php
		$id = $value['id'];
		$get_meta = get_post_custom($post->ID);
		
	
		if( isset( $get_meta[$id][0] ) )
			$current_value = $get_meta[$id][0];
			
	switch ( $value['type'] ) {
	
		case 'text': ?>
			<input  name="<?php echo $value['id']; ?>" id="<?php  echo $value['id']; ?>" type="text" value="<?php if( !empty( $current_value ) ) echo $current_value ?>" />
		<?php 
		break;

		case 'checkbox':
			if( !empty( $current_value ) ){$checked = "checked=\"checked\"";  } else{$checked = "";} ?>
				<input type="checkbox" name="<?php echo $value['id'] ?>" id="<?php echo $value['id'] ?>" value="true" <?php echo $checked; ?> />			
		<?php	
		break;
		
		case 'select':
		?>
			<select name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>">
				<?php foreach ($value['options'] as $key => $option) { ?>
				<option value="<?php echo $key ?>" <?php if ( isset($current_value) && $current_value == $key) { echo ' selected="selected"' ; } ?>><?php echo $option; ?></option>
				<?php } ?>
			</select>
		<?php
		break;
		
		case 'textarea':
		?>
			<textarea style="direction:ltr; text-align:left; width:430px;" name="<?php echo $value['id']; ?>" id="<?php echo $value['id']; ?>" type="textarea" cols="100%" rows="3" tabindex="4"><?php if( !empty( $current_value ) ) echo $current_value  ?></textarea>
		<?php
		break;
	} ?>
	</div>
<?php
}
?>