<?php
if ( ! defined( 'ABSPATH' ) ) exit;
class Event_Registration_Pro_Dashboard {
	   
	/**
	 * Meta box display callback.
	 *
	 * @param WP_Post $post Current post object.
	 */ 
	////////////////////////////////////////Dashboard////////////////////////////////////////////
	public function event_dashboard()
	{  
	  $event_display_settings=array();
	  $event_display_settings = get_option("erp_event_display_settings"); 
	  $dateformat=$event_display_settings['erp_event_display_settings_formatdate'];
	  $timeformat=$event_display_settings['erp_event_display_settings_formattime'];
	   $todays_date=date($dateformat);
	   $stat_chart_type=sanitize_text_field($_GET['stat_chart_type']);
	   $stat_chart_period=sanitize_text_field($_GET['stat_chart_period']);
	   $stat_chart=sanitize_text_field($_GET['stat_chart']);
	   
	  global $post,$wpdb,$final_price;
	 
	  $args = array(
					'post_status' => 'publish', 
					'post_type' => 'erp_event',
					'orderby' => 'ASC',
					'posts_per_page' => -1,											
				); 	

		$res = new WP_Query( $args );
		 $total_publish_cnt = count($res->posts);
		$archive_post=$wpdb->get_results(' SELECT * FROM '.$wpdb->posts.' WHERE post_status="archive" AND post_type="erp_event"'); 
		 $total_archive_cnt = count($archive_post);
		$total_event_cnt=$wpdb->get_results(' SELECT * FROM '.$wpdb->posts.' WHERE (post_status="publish" OR post_status="archive") AND post_type="erp_event"'); 
		 $total_event_cnt = count($total_event_cnt);
		 
		  					 $args = array(
											'post_status' => 'publish',
											'post_type' => 'register_events',
											'orderby' => 'post_date',
                          					'order' => 'ASC',
											'posts_per_page' => -1,											
										); 	
                
        						$res = new WP_Query( $args );
      
					    //echo '<pre>';print_r($res);echo '</pre>';
							$j=0;
							$todays_price=0;
							//$total_price_income=0;
							$month_reg=array();
							$daily_price=array();
								 while( $res->have_posts() ) : $res->the_post();
								  $meta =get_post_meta($post->ID);
								
								
									if(!empty($meta['event_name'][0])){
										if($stat_chart_period==3){
									  	$event_month= date('Y', strtotime($post->post_date));
									 		if($event_month==date(Y)){
												  $month_reg[]= date($dateformat, strtotime($post->post_date));
												  $price2 = get_post_meta($meta['post_id'][0],'erp_event_price_'.$meta['ticket_id'][0],true);
												   $daily_price[]= $price2;
											}
										}
										else{
											$event_month= date('M', strtotime($post->post_date));
									 		if($event_month==date(M)){
												 
												 $month_reg[]= date($dateformat, strtotime($post->post_date));
												  $price2 = get_post_meta($meta['post_id'][0],'erp_event_price_'.$meta['ticket_id'][0],true);
												   $daily_price[]= $price2;
												 
											}
											
											}
										 $event_date_publish= date($dateformat, strtotime($post->post_date));
										 
										 //$price1 = get_post_meta($meta['post_id'][0],'erp_event_price_'.$meta['ticket_id'][0],true);
										 //$total_price_income=$total_price_income+$price1;
										 if(strtotime($event_date_publish)==strtotime($todays_date)){
											 $j++;
											 $price = get_post_meta($meta['post_id'][0],'erp_event_price_'.$meta['ticket_id'][0],true);											
											 if($price != '')
											 {											 
											 	$todays_price = $todays_price+$price;
											 }
										 }
									}
								 endwhile;
								 
								 $todays_reg=$j;
								 $e_date=array();
								 $final_arr=array();
								 
								 $sum = 0;
								 $j = 0;
								foreach($month_reg as $key=>$val)
								{
									
									if (in_array($val, $e_date))
									{
										
										if($daily_price[$key] != '')
											$sum = $sum + $daily_price[$key];
									} 
									else
									{
										
										if($sum != 0)
										{
											$final_arr[$e_date[$j]] = $sum;
											$j++;
										}
										$sum = 0;
										array_push($e_date,$val);
										if($daily_price[$key] != '')
											$sum = $sum + $daily_price[$key];
									}
								}
								$final_arr[$e_date[$j]] = $sum;
								
								
								
								 
								$monthchart=array_count_values($month_reg);
								
									
								 
								 $arr = array();
								 $total_s=0;
								foreach($final_arr as $key=>$val){
									 $total_s=$total_s+$val;
																 
									$arr[] = '["'.date($dateformat, strtotime($key)).'", 0, 0,'.$val.', '.$monthchart[$key].', '.$total_s.']'; 
								}
								
?>	  

<div class="container-fluid container-main test">
	<div class="container dash_container">
    	<div class="row">
			<div class="col-md-12">
            	<div class="row">	
	            	<h4>Event Registration Pro - Dashboard</h4>
                </div>
            </div>
    	</div>
    </div>
        
    <!-- VERSION INFORMATION -->
    <div class="container dash_container">
    	<div class="row">
			<div class="col-md-12">
            	<div class="row">	
				<div class="col-md-6">
                	<div class="row">	
					
						<a href="<?php echo get_site_url();?>" target="_blank" title='eventregistrationpro.com'><img src="<?php echo plugin_dir_url( dirname( __FILE__ ) );?>cpanel_logo_dash.jpg"/></a>
					</div>
                    <div class="row">
                        <!--<p>By <a href="http://www.joomlashowroom.com" target="_blank">JoomlaShowroom.com</a>  	</p>-->
                    </div>
				</div>
				<div class="col-md-6 ">	
                	<div class="row">		
                       <!-- <form name="adminForm" action="index.php?option=com_registrationpro" method="post">
                            <p>Awesome! You are up to date<img src='http://sandbox3.itdwebdesign.com/administrator/components/com_registrationpro/assets/images/tick.png' border='0' class='pull-right' /></p><p>Installed Version<span class="badge badge-success pull-right">4.1.0</span></p><p>Available Version<span class="badge badge-info pull-right">4.1.0</span></p>					<input type="hidden" name="option" value="com_registrationpro" />
                            <input type="hidden" name="controller" value="registrationpro"/>
                            <input type="hidden" name="task" value="" />
                            <input type="hidden" name="boxchecked" value="0" />
                        </form>-->
                    </div>
				</div> 
                <!--a href="http://www.joomlashowroom.com" title="New Version Available!" target=_blank>
                <img src="http://www.joomlashowroom.com/additional/popups/banner_right.jpg" id="banner_right" style="display:none;">
                </a-->			
				<script type="text/javascript">
					var ww = jQuery(window).width();
					if((ww > 0)&&(ww < 1200)){
						jQuery('#sidebar_right').css("display","none");
						jQuery('#sidebar_top').css("display","line");
					} else {
						jQuery('#sidebar_right').css("display","inherit");
						jQuery('#sidebar_top').css("display","none");
					}
				</script>	
                </div>	
			</div><!-- Closing the version info div -->
        </div>
    </div> 
    <div class="container dash_container">
    	<div class="row">
			<div class="col-md-12">
            	<div class="row">	
				<div class="col-md-6">
                	<div class="row">	
						 <h4><?php if($stat_chart_period==3){ echo 'Events Statistics for Current Year';}else {echo 'Events Statistics for Today';} ?>	</h4>
                                                            

					</div>
                    
				</div>
				<div class="col-md-6 ">	
                	<div class="row">		
                       <form name="stat_chart" class="stat_chart_deg" method="get">
                       
                       		<?php   
								global $pagenow;
								if($pagenow=='edit.php')
									{
									echo '<input type="hidden" name="post_type" value="erp_event" />';	
									}
							 ?>
                       	
                            <input type="hidden" name="page" value="event-dashboard" />
                            <input type="hidden" name="stat_chart" value="1" />
                            
                            <select class="inputbox dashborad-select-element" size="1" id="stat_chart_period" name="stat_chart_period">
                            	
                                <option value="1" <?php if($stat_chart_period==1){ echo $selected='selected';} ?> >Current Month</option>
                                <option value="3" <?php if($stat_chart_period==3){ echo $selected='selected';} ?> >Year to Date</option>
                            </select>
                            <select class="inputbox dashborad-select-element" size="1" id="stat_chart_type" name="stat_chart_type">
                                <option value="0" <?php if($stat_chart_type==0){ echo $selected='selected';} ?>>Line Chart</option>
                                <option value="1" <?php if($stat_chart_type==1){ echo $selected='selected';} ?>>Area Chart</option>
                                <option value="2" <?php if($stat_chart_type==2){ echo $selected='selected';} ?>>Stepped Area Chart</option>
                            </select>
                            
                            
                        </form>
                    </div>
				</div> 
                <!--a href="http://www.joomlashowroom.com" title="New Version Available!" target=_blank>
                <img src="http://www.joomlashowroom.com/additional/popups/banner_right.jpg" id="banner_right" style="display:none;">
                </a-->			
				<script type="text/javascript">
                jQuery('#stat_chart_type').change(function(e) {document.stat_chart.submit();});
                jQuery('#stat_chart_period').change(function(e) {document.stat_chart.submit();});
                </script>	
                </div>	
			</div><!-- Closing the version info div -->
        </div>
    </div>        

	      
	 <?php if(!empty($monthchart))
     {?> 
         <div class="container dash_container">
            <div class="row">
                <div class="col-md-12">
                    <div class="div-info">
                        <div class="row">	
                            
                            <?php /* Start Chart*/?>                   
                    
                    <div id="chart_div"></div>
                  
					
                    <script type="text/javascript">
                        Array.prototype.reduce = undefined;
                        google.load("visualization", "1", {packages:["corechart"]});
                        google.setOnLoadCallback(drawChart);
    
                        function drawChart() {
                            var data = google.visualization.arrayToDataTable([
                                ['Date', 'Number of Registrants', 'Tax Amount', 'Daily Amount', 'Total Registrants', 'Total Income'],
                                 <?php echo implode(",",$arr); ?>
                            ]);
                            var options = {
                            legend: { position: 'bottom' },
                                hAxis: {textStyle: {color: 'black', fontSize: 10}},
                                vAxis: {textStyle: {color: 'black', fontSize: 10}},
                                chartArea:{left:50,top:10,width:"100%",height:"65%"}
                            };
                            <?php   if($stat_chart_type==1){?>			
                                        
                                var chart = new google.visualization.AreaChart(document.getElementById('chart_div'));
                            
                            <?php }else if($stat_chart_type==2){?>
                            
                            var chart = new google.visualization.SteppedAreaChart(document.getElementById('chart_div'));
                            
                            <?php } else{ ?>
                            
                            var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
                            
                            <?php } ?>
                            chart.draw(data, options);
                            function resizeHandler () {
                                chart.draw(data, options);
                            }
                            if (window.addEventListener) {
                                window.addEventListener('resize', resizeHandler, false);
                            }
                            else if (window.attachEvent) {
                                window.attachEvent('onresize', resizeHandler);
                            }
                        }
                    </script>
                   <?php /* END Chart*/?>
                        </div>    
                    </div>    
                </div>  
            </div>
        </div>	
		<?php }else
			   {?>
               <div style="padding: 30px;text-align: left;color: #aaa;border: 1px solid #ccd;">
               		No records found
               </div>
		<?php }?>  
               
    
    <!-- INFO BOXES -->
    <div class="container dash_container statics_number">
    	<div class="row">
            <div class="col-lg-2 col-md-2 col-sm-6 col-xs-12">
            	
                    <div class="infobox infobox-blue">
                        <div class="infobox-data">
                            <h3><span class="stats-number"><?php echo $total_event_cnt;?></span></h3>
                        </div>
                        <div class="infobox-footer">
                            <div class="infobox-label-content label label-success">Total Events in System</div>
                        </div>
                    </div>
                
            </div>
            <div class="col-lg-2 col-md-2 col-sm-6 col-xs-12">
            	
                    <div class="infobox infobox-orange">
                        <div class="infobox-data">
                            <h3><span class="stats-number"><?php echo $total_publish_cnt;?></span></h3>
                        </div>
                        <div class="infobox-footer">
                            <div class="infobox-label-content label label-success">Published Events</div>
                        </div>
                    </div>
                
            </div>
            <div class="col-lg-2 col-md-2 col-sm-6 col-xs-12">
            	
                    <div class="infobox infobox-yellow">
                        <div class="infobox-data">
                            <h3><span class="stats-number"><?php echo $total_archive_cnt;?></span></h3>
                        </div>
                        <div class="infobox-footer">
                            <div class="infobox-label-content label label-success">Archived Events</div>
                        </div>
                    </div> 
                
            </div>
            <div class="col-lg-2 col-md-2 col-sm-6 col-xs-12">
            	
                    <div class="infobox infobox-green">
                        <div class="infobox-data">
                            <h3><span class="stats-number"><?php echo $todays_reg;?></span></h3>
                        </div>
                        <div class="infobox-footer">
                            <div class="infobox-label-content label label-success">Today's Registrants</div>
                        </div>
                    </div>
                
            </div>
            <div class="col-lg-2 col-md-2 col-sm-6 col-xs-12">
            	
                    <div class="infobox infobox-dk-blue">
                        <div class="infobox-data">
                            <h3><span class="stats-number-small"><?php 
										do_action('get_ticket_add_on_setting_event_registration_pro_ticket_standard',$todays_price);
										echo $final_price;		
							?></span></h3>
                        </div>
                        <div class="infobox-footer">
                            <div class="infobox-label-content label label-success">Today's Income</div>
                        </div>
                    </div>
               
            </div>
            <!--<div class="col-lg-2 col-md-2 col-sm-6 col-xs-12">
            	
                    <div class="infobox infobox-red">
                        <div class="infobox-data">
                            <h3><span class="stats-number-small">$0.00</span></h3>
                        </div>
                        <div class="infobox-footer">
                            <div class="infobox-label-content label label-success">Tax Charged Today</div>
                        </div>
                    </div>
                
            </div> -->
        </div>    
	</div> 
    
    <!-- LAST 10 TRANSACTIONS -->
    <div class="container dash_container">
    	<div class="row">	
            <div class="col-md-12">
            	<div class="row">
                	<div class="div-info">
                    	<div class="table_head"><h4>Last 10 Transactions</h4></div>
                        <div class="table-responsive"> 
                            <table class="table wp-list-table widefat fixed striped posts dashboard-table dashboard_table_fixed"> 
                                <thead>
                                    <tr>
                                        <th id="header">Date/Time</th>
                                        <th id="header">Registrant Name</th>
                                        <th id="header">Event</th>
                                        <th id="header">Ticket Name</th>
                                        <th id="header">Payment Status</th>
                                        <th id="header">Price</th>
                                    </tr>
                                </thead>
                                <tbody>
                                <?php  global $post;
							  $args = array(
											'post_status' => 'publish',
											'post_type' => 'register_events',
											'orderby' => 'post_date',
                          					'order' => 'DESC',
											'posts_per_page' => -1,											
										); 	
                
        						$res = new WP_Query( $args );
      
					//echo '<pre>';print_r($res);echo '</pre>';
							$i=1;
								 while( $res->have_posts() ) : $res->the_post();
								  
									  $meta =get_post_meta($post->ID);
									 $price = get_post_meta($meta['post_id'][0],'erp_event_price_'.$meta['ticket_id'][0],true);				 
									$ticket_name = get_post_meta($meta['post_id'][0],'erp_event_ticket_name_'.$meta['ticket_id'][0],true);
									if(empty($ticket_name)){
										$tkt_name='Free Admission';
										//$tkt_price='$0.00';
									}
									else{
										$tkt_name=$ticket_name;
										//$tkt_price=do_action('get_ticket_add_on_setting_event_registration_pro_ticket_standard',$price);
									}
								
								if($i<=10){
								
								if(!empty($meta['event_name'][0])){
									 $i++
								?>
                                <tr>
                                    <td class="dashboard_table_td"><?php echo date($dateformat, strtotime($post->post_date));?> <?php echo date($timeformat, strtotime($post->post_date));?></td>
                                    <td class="dashboard_table_td"><?php echo stripslashes($post->post_title);?></td>
                                    <td class="dashboard_table_td"><a href="post.php?post=<?php echo $meta['post_id'][0] ;?>&action=edit"><?php echo $meta['event_name'][0];?></a></td>
                                    <td class="dashboard_table_td"><?php echo $tkt_name;?></td>
                                    <td class="dashboard_table_td"> <?php if($meta['paymentstatus'][0]==1){ echo 'Completed'; } else{ echo 'Pending';} ?></td>
                                    <td class="dashboard_table_td">
									<?php if(empty($ticket_name)){
										
										echo $tkt_price='$0.00';
									}
									else{
										
										do_action('get_ticket_add_on_setting_event_registration_pro_ticket_standard',$price);
										echo $final_price;
									}?>
									</td>
                                </tr>
                               <?php } } endwhile; ?>
                                </tbody>
                            </table>
                        </div>
                    </div>    
                </div>
            </div>    
        </div>
    </div>   
        
    <!-- NEXT 10 UPCOMING EVENTS -->
    <div class="container dash_container">
    	<div class="row">
            <div class="col-md-12"> 
            	<div class="row">
                	<div class="div-info">
                    	<div class="table_head" ><h4>Next 10 Upcoming Events</h4></div>
                        <div class="table-responsive"> 
                            <table class="table wp-list-table widefat fixed striped posts dashboard-table dashboard_table_fixed"> 
                                <thead>
                                    <tr>
                                        <th id="header">Event ID #</th>
                                        <th id="header">Event Title</th>
                                        <th id="header">Event Dates</th>
                                        <th id="header">Registrations</th>
                                    </tr>
                                </thead>    
                                <tbody>
                                 <?php 
																						
								$args = array(
											/*'post_status' => 'publish',
											'post_type' => 'erp_event',
											'posts_per_page' => -1,
											'orderby' => 'erp_event_date',
                          					'order' => 'DESC',*/
											'post_status' => 'publish',
											'post_type' => 'erp_event',											
											'meta_key' => 'erp_event_date',
											'orderby'   => array(
															  'date' =>'ASC',
															 
															 ),																						
											);
										
										 $todays_date_up=date($dateformat, strtotime($todays_date));
										
										
										
										$res = new WP_Query( $args );
										$n=1;
										while( $res->have_posts() ) : $res->the_post();
									
											global $post;
											$meta = get_post_meta($post->ID);
											$max_attends=$meta['erp_event_max_attendance'][0];
										 $post_title=$post->post_title;
											//$query='select * from '.$wpdb->posts.' where ';
											echo $up_id=$post->ID;
											
											
											if($n<=10){
											
											 $event_date_publish= date($dateformat, strtotime($meta['erp_event_date'][0]));
											
											
											 if(strtotime($event_date_publish) > strtotime($todays_date_up)){
												 $n++;
												 
												 $args1 = array(											
																'post_type' => 'register_events',
																'posts_per_page' => '-1',
																'meta_query'     => array(
																		array (
																		   'key'     => 'accepted',
																		   'value'   =>1,
																		   'compare' => '=',
																		 ),
																		 array (
																		   'key'     => 'post_id',
																		   'value'   =>$up_id,
																		   'compare' => '=',
																		 )
																	),
															); 	
															
													$res1 = new WP_Query( $args1 );
													 $register_count1= $res1->post_count;
													 $reg_total_price=0;
													  while( $res1->have_posts() ) : $res1->the_post();
														  $regmeta =get_post_meta($post->ID);													
														
														
														 $regprice = get_post_meta($regmeta['post_id'][0],'erp_event_price_'.$regmeta['ticket_id'][0],true);
														 $reg_total_price=$reg_total_price+$regprice;
													
													endwhile;
													 
													 $args2 = array(											
																'post_type' => 'register_events',
																'posts_per_page' => '-1',
																'meta_query'     => array(
																		array (
																		   'key'     => 'pending',
																		   'value'   =>1,
																		   'compare' => '=',
																		 ),
																		 array (
																		   'key'     => 'post_id',
																		   'value'   =>$up_id,
																		   'compare' => '=',
																		 )
																	),
															); 	
															
													$res2 = new WP_Query( $args2 );
													 $pending_count1= $res2->post_count;
												?>

        
        						 <tr>
								 <?php $post_id=get_post_meta($post->ID,'post_id');?>
                                    <td class="dashboard_table_td"><?php echo $up_id;?></td>
                                    <td class="dashboard_table_td"><a href="post.php?post=<?php echo $up_id ;?>&action=edit"><?php echo stripslashes($post_title);?></a></td>
                                    <td class="dashboard_table_td"><?php echo date($dateformat, strtotime($meta['erp_event_date'][0]));?> - <?php echo date($dateformat, strtotime($meta['erp_event_enddate'][0]));?></td>
                                    <td class="dashboard_table_td">
									<?php if((!empty($register_count1))OR (!empty($pending_count1))){
									$post_id=get_post_meta($post->ID,'post_id');
										if(empty($max_attends)){$max_attends='&#8734';}	
										do_action('get_ticket_add_on_setting_event_registration_pro_ticket_standard',$reg_total_price);
																			
										echo '<span >Total: '. $final_price.'</span><br>';?>
										<a href="edit.php?post_type=erp_event&page=register-report-view&event_id=<?php echo $up_id ;?>" title="Edit Users">
										<?php if(!empty($pending_count1)){echo "Pending:".$pending_count1;}?>
										<?php if(!empty($register_count1)){echo "<br /> Accepted:".$register_count1;}?>
										<br>Total: <?php echo $register_count1.' /'.$max_attends;?>
										</a>
										<?php
										
										}else{echo '<b>No Registrations Yet</b>';}
									
									?>
									
									</td>
                                </tr>


								 <?php  } } endwhile;	?>
                               
                                
                                </tbody>				
                            </table>
                        </div>
                    </div>
                </div>
            </div>
 		</div>
    </div>
        
    <!-- FOOTER INFORMATION -->
    <div class="container dash_container">
    	<div class="row">
            <div class="col-md-12">
            	<div class="row"> 
                    <div class="col-xs-12 col-sm-12 col-md-4 left_column">
                    	<div class="row">
                          <!--  <p class="">
                            <a href="http://extensions.joomla.org/extensions/owner/JoomlaShowroom" target="_blank" title="Leave JED Feedback">Leave JED Feedback</a>
                            </p> 
                            <p class="">
                                <a href="http://joomlashowroom.com/documentation" font-color="#fff" target="_blank" title="User Manual ">User Manual</a> 
                            </p> 
                            <p class="">
                            <a href="http://www.joomlashowroom.com/help/support-ticket-center" target="_blank" title="Joomla Showroom Support Center">Joomla Showroom Support Center</a>
                            </p> 
                            <p class="">
                            <a href="http://twitter.com/joomlashowroom" target="_blank" title="Follow Us on Twitter">Follow Us on Twitter</a> 
                            </p> -->
                       </div>     
                    </div>
             
                    <div class="col-xs-12 col-sm-12 col-md-4">
                    	<div class="row">
                            <p><strong>Event Registration Pro: Event registration software for Wordpress! </strong><br/>
                            &copy; Copyright <?php echo date(Y);?> - All Rights Reserved. <a href='http://www.eventregistrationpro.com' target='_blank'>www.eventregistrationpro.com</a> <br/>	
                            Installed Version: 1.0.0 <br/>
                            Minimum Required PHP Version: (5.5 +) (Your PHP Version # is:  <?php echo phpversion();?>)	</p>
                        </div>	
                    </div>
                    
                    <div class="col-xs-12 col-sm-12 col-md-4">
                    	<div class="row">
                            <!--<a href="http://www.joomlashowroom.com" target="_blank">
                            <img src="http://sandbox3.itdwebdesign.com/administrator/components/com_registrationpro/assets/images/Joomla_Showroom_logo.png" border="0"class="regpro-images"/>
                            </a>-->
                        </div>
                    </div>
                </div>
            </div>  
        </div>
    </div>        
</div>
<?php }    
}